私は Java を初めて使用しますが、ActionScript 3 で OOP の経験があるため、知っているものに依存して移行しようとしています。
ActionScript 3 では、get キーワードと set キーワードを使用してゲッターとセッターを作成できます。つまり、クラスにメソッドを作成し、そのクラスのインスタンスのプロパティを介してデータにアクセスします。複雑に聞こえるかもしれませんが、そうではありません。次に例を示します。
class Dummy{
private var _name:String;
public function Dummy(name:String=null){
this._name = name;
}
//getter
public function get name():String{
return _name;
}
//setter
public function set name(value:String):void{
//do some validation if necessary
_name = value;
}
}
そして、次name
のようにオブジェクトにアクセスします。
var dummy:Dummy = new Dummy("fred");
trace(dummy.name);//prints: fred
dummy.name = "lolo";//setter
trace(dummy.name);//getter
Javaでそれを行うにはどうすればよいですか?
public フィールドをいくつか持つだけでは問題ありません。メソッドの前に get と set を使用するという規則があることに気付きましたが、これで問題ありません。
例えば、
class Dummy{
String _name;
public void Dummy(){}
public void Dummy(String name){
_name = name;
}
public String getName(){
return _name;
}
public void setName(String name){
_name = name;
}
}
クラスのインスタンスからフィールドとしてプライベート フィールドにアクセスする場合のように、Java に ActionScript 3 ゲッター/セッターに相当するものはありますが、それをクラス内で内部的に実装するためのメソッドがありますか?