当我有一个公开的暴露类时,我通常会将其成员变量与公共访问器和增变器一起私有化(如果可能,我会尽量避免使用增变器来使我的类不可变)。我们是否应该严格遵守set/get规则
例如,
public class Point {
private final int x;
private final int y;
public Point(int x, int y) {
this.x = x;
this.y = y;
}
public int getX() {
return x;
}
public int getY() {
return y;
}
}
如果类是私人使用,我通常会
private static class Point {
public final int x;
public final int y;
public Point(int x, int y) {
this.x = x;
this.y = y;
}
}
因为我觉得第二个办法是我方便多了。虽然一个好的IDE可能会有所帮助,但不那么繁琐且输入少。
我想知道,如果我有一个公共消费类,我使用第二种方法是否好? (通过确保我公开的字段将是不可改变的)。
它的任何缺点?虽然它似乎违反了OOP封装理论,但从实际角度来看,我并没有看到真正的危害。
是。我知道这对私人课程是成立的。公共课怎么样? – 2010-10-10 17:34:33
@Yan Cheng CHEOK对不起,没有仔细阅读你的问题,看看编辑。 – mgbowen 2010-10-10 17:35:03