Actionscript 3 - Getterssetters in Java

De openkb
Aller à : Navigation, rechercher

Sommaire

Questions

I m new to Java, but have some OOP experience with ActionScript 3, so I m trying to migrate relying on stuff I know.

In ActionScript 3 you can create getters and setters using the get and set keywords, meaning you create a method in the class and access data through a property of an instance of that class. I might sound complicated, but it s not. Here s an example:

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;
    }

}

And I would access name in an object as:

var dummy:Dummy = new Dummy("fred");
trace(dummy.name);//prints: fred
dummy.name = "lolo";//setter
trace(dummy.name);//getter

How would I do that in Java?

Just having some public fields is out of the question. I ve noticed that there is this convention of using get and set in front of methods, which I m OK with.

For example,

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;
    }

}

Is there an equivalent of ActionScript 3 getter/setters in Java, as in accessing a private field as a field from an instance of the class, but having a method for implementing that internally in the class?

Answers

Nope. AS3 getters and setters are an ECMAScript thing. In Java, you re stuck with the getVal() and setVal() style functions--there isn t any syntactic sugar to make things easy for you.

I think Eclipse can help auto-generating those types of things though...

Source

License : cc by-sa 3.0

http://stackoverflow.com/questions/875033/getters-setters-in-java

Related

Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Outils