Java 中的 Getters/setters
2022-09-01 22:50:57
我是Java的新手,但是对ActionScript 3有一些OOP经验,所以我正试图依靠我所知道的东西进行迁移。
在 ActionScript 3 中,可以使用 get 和 set 关键字创建 getter 和 setter,这意味着您可以在类中创建一个方法,并通过该类的实例的属性访问数据。我可能听起来很复杂,但事实并非如此。下面是一个示例:
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中我该怎么做?
仅仅拥有一些公共领域是不可能的。我注意到有一种在方法前面使用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 getter/setter 等效的字段,就像从类的实例访问私有字段一样,但是有一个在类内部实现该字段的方法?