对象可以是私有的还是公共的?

时间:2014-06-24 05:58:41

标签: java class private public aliasing

对象的引用可以在类中是私有的,而其他对象可以具有对同一个类的公共引用(post script:new to java + a simple example please)。 我在某处读到这个问题是关于混叠的? 对不起,我的头衔可能没有意义!

3 个答案:

答案 0 :(得分:5)

对象不是私有的或公共的。 字段可以是私有的或公开的。字段可以保存对象的引用。私有和公共字段可以同时引用一个对象:

public class Example {
    public static Object a;
    private static Object b;

    public static void main(String... args) {
        Object foo = new Object();
        a = foo;
        b = foo;
        // Now our Object is referred to by the public field a, the private
        // field b, and the local variable foo (which is not considered either
        // private or public).
    }
}

答案 1 :(得分:0)

public和private是访问修饰符。如果使用私有修饰符,则意味着相关成员只能在同一个类中访问。如果它是公共的,您可以访问同一类,相同包和不同包中的该成员;无处不在。 OOAD建议我们应该包含不同的内容。因此,我们将所有实例变量设为私有,并声明公共getter / setter方法从任何地方访问这些变量。 public和private只是修饰符。

答案 2 :(得分:0)

public和private是访问修饰符。它们是可选修饰符,它们决定变量,方法或类的可访问性。如果使用私有修饰符,则意味着相关成员只能在同一个类中访问。如果它是公共的,您可以访问同一类,相同包和不同包中的该成员;无处不在。 OOAD建议我们应该包含不同的内容。因此,我们将所有实例变量设为私有,并声明公共getter / setter方法从任何地方访问这些变量。公共和私人只是修饰符。