在Java中,构造函数的访问权限可以设置为以下三种之一:
- public:如果构造函数被声明为public,那么它可以被任何类访问。这是默认的访问级别,如果你不指定访问修饰符,构造函数将具有此级别。
public class MyClass { public MyClass() { // 构造函数内容 } }
- private:如果构造函数被声明为private,那么它只能在其所在的类中被访问。这意味着没有其他类可以创建此类的实例。这在创建单例类时很有用。
public class MyClass { private MyClass() { // 构造函数内容 } }
- protected:如果构造函数被声明为protected,那么它可以在同一个包中的类和子类中被访问。这允许子类访问父类的构造函数,以便在子类中创建父类的实例。
public class MyClass { protected MyClass() { // 构造函数内容 } }
注意:构造函数不能具有比其所在类更严格的访问权限。例如,如果一个类的访问级别是private,那么它的构造函数不能是public或protected。