getterとsetter (java)
getterとsetterについて解説していきたい
これはあるクラスの変数をカプセル化した状態で値を他のクラスから代入する時に使うものである
まず以下のAクラスを用意する
public class A { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } }
続いてこれを起動させるMainクラスを以下のようにする
public class Main { public static void main(String[] args) { A a= new A(); a.setName("hello"); System.out.println(a.getName()); } }
それでは順に追っていく
まず最初にstatic領域にコピーされたのはmainメソッドのみなのでこれを起動する
最初にAクラスのインスタンスを生成する
次にそこからgetNameメソッドに引数"hello"を渡して実行する
するとAクラスのインスタンスaではprivateの変数nameはnullであったがhelloを渡されて代入されている
次にgetNameメソッドを出力している
インスタンスaのgetNameメソッドではprivateのnameを返している
このように外部からprivateの変数を編集する時に使用するのがこのゲッターとセッターである
セッターで引数を渡して、ゲッターでprivateの変数を出力できるようにしておく