Я новичок в Java, но имею опыт работы с OOP с ActionScript 3, поэтому я пытаюсь выполнить миграцию, полагаясь на то, что я знаю.
В 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?
Просто, если в некоторых общественных местах не может быть и речи. Я заметил, что существует такое соглашение об использовании 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;
}
}
Есть ли эквивалент ActionScript 3 getter/seters в Java, как в доступ к частному полю в качестве поля из экземпляра класса, но имеющий способ реализации этого внутри класса?