可能重复:
Java 中没有属性语法
请看以下情况:
class Test extends Object {
private int x;
public getX() {return x;}
public setX(int _x) {x = _x;}
}
如您所见,没有什么特别的。但是,我想知道是否有可能以使用该类的人不需要使用 getX() 的方式保留“私有 x”,换句话说,如果我可以映射一些自动调用的变量获取和设置。
类似于 Delphi 中的“属性”。它可以避免在复杂表达式中使用 setX() 和 getX() ,并且可以更容易理解谁在读取表达式。
例如,假设可以使用另一个标识符 xx 和 yy 来代替 get 和 set 方法。看:
import Test;
public static void main(String[] args) {
new Test() {
setX(10);
setY(20);
int z = getX() * getY() + (getY() * getY());
System.out.println("%d", z);
}
// would be like this
new Test() {
xx = 10;
yy = 20;
int z = xx * yy + (yy * yy); // xx would access the method getX() automatically
System.out.println("%d", z);
}
}
我希望你们明白我的意思。
编辑:
卷饼!这是很多答案!非常感谢大家。