Java-コンストラクター
コンストラクターは、作成時にオブジェクトを初期化します。クラスと同じ名前で、構文的にはメソッドに似ています。ただし、コンストラクターには明示的な戻り値の型はありません。
通常、コンストラクターを使用して、クラスによって定義されたインスタンス変数に初期値を与えるか、完全に形成されたオブジェクトを作成するために必要なその他の起動手順を実行します。
Java は、すべてのメンバー変数をゼロに初期化するデフォルトのコンストラクターを自動的に提供するため、定義するかどうかに関係なく、すべてのクラスにコンストラクターがあります。ただし、独自のコンストラクターを定義すると、既定のコンストラクターは使用されなくなります。
構文
以下はコンストラクタの構文です-
class ClassName {
ClassName() {
}
}
Java では 2 種類のコンストラクタを使用できます。つまり −
- 引数なしコンストラクタ
- パラメータ化されたコンストラクタ
引数なしコンストラクタ
名前が Java の引数なしコンストラクターを指定しているため、代わりにパラメーターを受け入れません。これらのコンストラクターを使用すると、メソッドのインスタンス変数はすべてのオブジェクトの固定値で初期化されます。
例
Public class MyClass {
Int num;
MyClass() {
num = 100;
}
}
次のようにコンストラクターを呼び出して、オブジェクトを初期化します
public class ConsDemo {
public static void main(String args[]) {
MyClass t1 = new MyClass();
MyClass t2 = new MyClass();
System.out.println(t1.num + " " + t2.num);
}
}
これにより、次の結果が生成されます
100 100
パラメータ化されたコンストラクタ
ほとんどの場合、1 つ以上のパラメーターを受け入れるコンストラクターが必要になります。パラメーターは、メソッドに追加されるのと同じ方法でコンストラクターに追加されます。コンストラクター名の後の括弧内でパラメーターを宣言するだけです。
例
これは、コンストラクターを使用する簡単な例です-
// A simple constructor.
class MyClass {
int x;
// Following is the constructor
MyClass(int i ) {
x = i;
}
}
次のようにオブジェクトを初期化するためにコンストラクターを呼び出します-
public class ConsDemo {
public static void main(String args[]) {
MyClass t1 = new MyClass( 10 );
MyClass t2 = new MyClass( 20 );
System.out.println(t1.x + " " + t2.x);
}
}
これにより、次の結果が生成されます-
10 20
Java