Javaの場合はJavaBeansの仕様としてgetter/setterを使用するってあったような気がします。
オブジェクトのメンバは外部から直接操作させないべきであると思います。
//Javaです。
public class StaffInfo {
//メンバ変数
public String seibetu = "男";
public String name = "オガシン";
}
これだとインスタンスした側から直接値を変更できます。
知らない間にオガシンは女になっているかもしれません!!!
下記のようにすれば、性別は変更不能(ReadOnly)になります。
public class StaffInfo {
private String seibetu = "男";
private String name = "オガシン";
public String getSeibetu(){
return seibetu;
}
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
}
このようにget/setをもちいることでカプセル化が可能ですので
使用するように!って文化になっていると思っています。
またVB.NETもJavaもエラー時はExceptionをスローするので
戻り値はリターンコード、処理結果は参照渡しされた引数にセットされます
のようなメソッドを作成すると、これまでどこで値がセットされたのか
追いにくくなると思います。
どこかに引数はメソッドの動作させるパラメータである。
って書いてあったような気がします。
|