我是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;
}
}
我将访问一个对象中的名称:
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,如同
从类的实例中访问私有字段作为字段,但是具有在类内部实现的方法?