コンストラクタって何?使い方は? by Javaプログラミング初心者vol.46

スポンサーリンク
コンストラクタ Java攻略

初めましてのコンストラクタってものが出てきたから、今回はコンストラクタについてまとめることにした。

コンストラクタがどんなものかについてと、コンストラクタを使ったコードについて見ていこうと思う。

 

スポンサーリンク

コンストラクタとは?

 

コンストラクタはメソッドの一つで、英語では「special method(スペシャルメソッド)」とも表現される。

Javaのコンストラクタはオブジェクトの属性、即ち「int age」や「String name」などのような変数初期値を設定するときに使用することができる。

例えば「age」という変数の初期値を「5」と設定したいとか。

実はコンストラクタは、クラスのオブジェクトが生成されたときに自動的に作られている

自分でコンストラクタを作らなかった場合は、目に見えないだけでJavaが内部的に作っている。

コンストラクタを作れば「age=5」といったような初期値が自分で設定できるけれど、作らなければ自動的に「0」もしくは「null」が初期値として設定される。

nullはStringを使用した文字列の変数の場合。

 

コンストラクタを作った場合、オブジェクトが作られるたびに、コンストラクタで作った初期値が参照される。

 

コンストラクタの作り方

 

コンストラクタを作る際には以下のルールがある。

  • コンストラクタの名前はクラス名と同じでなくてはならない
  • voidなどの戻り値の型を使うことはできない
  • コンストラクタは当該クラスの中に書かれる

 

コンストラクタの構成は以下の通り。

クラス名と同じ名前(){}

以下がコンストラクタを使ったコード。

public class ConsractorUseSecond {

public static void main(String[] args) {
ConstractorUse EBI = new ConstractorUse();
System.out.println(EBI.age);

}

}

class ConstractorUse {
int age=5;

ConstractorUse(){
age=10;
}
}

の部分がコンストラクタ。

自分で作った「ConstractorUseクラス」に、最初に「int age=5」と記入した。

その後で、初期値を設定するコンストラクタを使用し、その中に「age=10」と初期値が「10」であると設定してみた。
これで、「5」と「10」のどちらの値が画面に出力されるのか確認してみた。

 

その後メインメソッド内でオブジェクトを作成し、画面に出力するコードを入力した。

 

コンストラクタを使用したコードを実行した結果

 

上のコードを実際に実行すると、画面には「10」と表示された。

このことから、クラス直下に書かれた「int age=5;」よりも、コンストラクタを作って設定した「age=10」の方が優先されている。

よって、コンストラクタで初期値を設定したら、メインメソッド内でオブジェクトを作成し、System.out.println(EBI.age);と書くだけで初期値の「10」が表示されることになる。

これが初期値。

 

もしコンストラクタを作らずに「int age=5;」だけだったら、問題なく「5」が画面に表示される。

 

最後に

 

コンストラクタを使用することで、デフォルトではなく自分で初期値を設定することができる

コンストラクタは自動で作られるけど、それだと数字の場合は「0」、文字列の場合は「null」となる。

0やnull以外の初期値を設定したいならコンストラクタを使用すればいい。

 

 

このエントリーをはてなブックマークに追加

コメント

タイトルとURLをコピーしました