如果我们在课堂上有私人构造函数会怎么样?

时间:2013-03-16 10:04:49

标签: java jsp struts2

如果我们在课堂上有私人构造函数会怎么样? (在Java中)

4 个答案:

答案 0 :(得分:2)

您只能在当前类中使用该构造函数。

答案 1 :(得分:2)

这意味着(没有反射)构造函数不能在类之外访问,因此其他类将无法调用它。只有您的类的成员才能创建其对象。

class A{
    private A(){} //private constructor

    private static A a = new A(); //you can create A object as a field

    void test(){
        new A(); // you can create A object inside methods of your class
    }

    class Inner{ // inner classes are also members of class so you can use 
                 // A constructor here
        A a = new A(); //OK
        void test(){
            new A(); //OK
        }
    }
}

class B{
    new A();//error: we don't have access to A constructor
}

答案 2 :(得分:0)

您只能从类中的其他构造函数或类中的静态方法调用它。

答案 3 :(得分:0)

这通常是限制从此类创建对象的一种方法。这意味着您无法从类中创建对象。