3.1 クラスとオブジェクト


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

オブジェクトの生成

  1. クラスとは、オブジェクトを生成するための雛型で、オブジェクトの状態を保持するフィールドとその状態に応じて何ならかの処理を行うメソッドを定義する。
public class SomeClass
{
  public SomeClass()    // new演算子により呼び出されるコンストラクタ
  {
  ・・・・
  }
}

  1. クラスはclassキーワードにより定義する。
  2. classキーワードの前に、publicというアクセス修飾子を付けると、クラスの種類(アクセスのスコープ)を指定する事ができる。
・public    すべてのクラスからアクセス可能
・無指定    同じパッケージ内からのみアクセス可能

  1. オブジェクトを生成するには、クラス型の変数を宣言する。
  2. 続いて、new演算子を使ってオブジェクトを生成する。
  3. new演算子はオブジェクトに必要な領域を確保し、クラスのコンストラクタを呼び出す。
  4. クラス型の変数は配列型の変数と同様に参照型。
SomeClass obj;
obj = new SomeClass();   // オブジェクトの生成

SomeClass obj = new SomeClass();

オブジェクトの生成方法を示すprogram

public class ClassTest
{
  public static void main(String[] args)
  {
    SomeClass obj, other;
    
    obj = new SomeClass();
    other = new SomeClass();

    if(obj.equals(other))
      System.out.println("代入前-------->同じobjectを参照");
    
    obj = other;
    if(obj.equals(other))
      System.out.println("代入後-------->同じobjectを参照");
  }
}

class SomeClass
{
  static int counter = 0;
  public SomeClass()
  {
    counter++;
    System.out.println(counter + "回目");
  }
}

※二つのオブジェクトが等しいかどうかを判定するのには、必ずequal()メソッドを使う。
  equal()はObjectクラスのメソッドであり、すべてのクラスはObjectを継承するため、anObject.equal(otherObject)という呼び出しが可能。
  この場合、anObjectとotherObjectが等しければ、equal()メソッドはtrueを返却する。
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。