Android スマートフォン 用語

コンストラクタ( constructor )
指定したクラスからインスタンスを生成( new )される同時に、メソッド内部で定義しておいた処理が自動的に行われるメソッドのことをコンストラクタといいます。



例えば、コンストラクタを使わないプログラミングで「Shainクラス」から同じ能力値の社員を3人 を生成してみます。

public class Main {
 public static void main (String[ ] args) {
  Shain s1 = new Shain ( ) ; // 社員A のインスタンスを生成
  s1.name = " 社員A " ; ← 初期値を与える
  s1.value = 100 ; ← 初期値を与える
  Shain s2 = new Shain ( ) ; // 社員B のインスタンスを生成
  s2.name = " 社員B " ;
  s2.value = 100 ;
  Shain s3 = new Shain ( ) ; // 社員C のインスタンスを生成
  s3.name = " 社員C " ;
  s3.value = 100 ;
      ・
      ・
      ・
 }
}


毎回作成されるインスタンス(社員)に初期値を与えるのは大変だね。
いつか間違っちゃうよ(;´Д`)ハァ…

しかし、前回作成した「Shain クラス」コンストラクタを追加すると、自動で処理が行われるようになります。

public class Shain {
 String name ;
 int value ;
 void eigyou( ) {
      ・
      ・
      ・
 }

// ココからがコンストラクタ
 Shain( ) {
  this.value = 100 ; ← value フィールドを100で初期化
 }
}

上記は、Shain( )メソッドをコンストラクタとして定義しており、
new が生成されると自動的に value に 100 が代入されます。


コンストラクタを使った例

public class Main {
 public static void main(String[ ]args){
  Shain s = new Shain( ) ; ← インスタンス生成と共に、value に 100 が代入される
  System.out.println( s.value ) ; ← valueの値を表示する
 }
}


これで自動的に100の値が代入され、「100」という実行結果が表示されます。








ひとり言アドバイス

アプリ 用語 単語