JAVA学習の記録③ 【ゲッターとセッター】
前回までの学びJAVA学習の記録② 【クラスのフィールド】
クラス内のフィールドを外部から自由に書き換え可能にしていると、予想外の値が設定されてトラブルが起こることがある。そのため、フィールドへの直接アクセスを避けるためにゲッターとセッターというメソッドを利用する。
一般的にゲッターの名前は「get」+「先頭1文字を大文字にしたフィールド名」とする。
セッターについて
セッターとは、フィールドに値を設定(セット)するメソッドのこと。
一般的にゲッターの名前は「set」+「先頭1文字を大文字にしたフィールド名」とする。
ゲッターについて
ゲッターとは、フィールドの値を取得(ゲット)するメソッドのこと。
一般的にゲッターの名前は「get」+「先頭1文字を大文字にしたフィールド名」とする。
Dog.java
public class Dog {
String name; //名前を表すnameフィールド
int age; //年齢を表すageフィールド
void setName(String dogName){ //nameフィールドののセッター
name = dogName;
}
String getName() { //nameフィールドのゲッター
return name;
}
void setAge(int dogAge) { //ageフィールドのセッター
age = dogAge;
}
int getAge() { //ageフィールドのゲッター
return age;
}
void introduceMyself() {
String n = getName(); //getNameメソッドを呼び出す
int a = getAge(); //getAgeメソッドを呼び出す
System.out.println("名前は" + n + a +"歳です"); //取得した値を表示
}
}
UseDog.java
public class UseDog {
public static void main(String[] args) {
Dog pochi = new Dog(); //Dogのpochiインスタンスを生成
pochi.setName("ポチ"); //フィールドに名前を設定
pochi.setAge(5); //フィールドに年齢を設定
pochi.introduceMyself(); //introduceMyselfを呼び出す
}
}
Dogクラスからpochiインスタンスを生成し、生成したインスタンスのフィールドに対して、セッターを介して名前(ポチ)と年齢(5)を代入しました。pochiインスタンスinntroduceMyselfメソッドを呼び出すと、
名前はポチ5歳です
と表示されます。
参考文献
「いちばんやさしいJAVAの教本」著者 石井真