我是编程新手。我现在正在学习Java,有一些我不太确定,即使用私有。为什么程序员将变量设置为私有,然后写入,获取器和设置器来访问它。无论如何,为什么不把所有东西都公开呢?使用私人关键字
public class BadOO {
public int size;
public int weight;
...
}
public class ExploitBadOO {
public static void main (String [] args) {
BadOO b = new BadOO();
b.size = -5; // Legal but bad!!
}
}
我发现了一些这样的代码,我看到评论合法但不好。我不明白为什么,请解释我。
它也使得调试更容易,因为你可以在你的getter和setter中添加日志记录或断点或其他任何东西。 – Brian 2010-10-19 21:16:54