我们可以在Java中将构造函数声明为私有的吗?
是的,我们可以将构造函数声明为private。如果将构造函数声明为私有,则无法创建类的对象。我们可以在SingletonDesignPattern中使用此私有构造函数 。
私人承建商的条件
一个私有的构造不允许一个类被继承。
一个私人constructo[R不允许创建类之外的对象。
如果类中所有常量方法都存在,则可以使用私有构造函数。
如果所有方法都是静态的,那么我们可以使用私有构造函数。
如果我们尝试扩展具有私有构造函数的类,则会发生编译时错误。
示例
class SingletonObject {
private SingletonObject() {
System.out.println("In a private constructor");
}
public static SingletonObject getObject() {
// we can call this constructor
if (ref == null)
ref = new SingletonObject();
return ref;
}
private static SingletonObject ref;
}
public class PrivateConstructorDemo {
public static void main(String args[]) {
SingletonObject sObj = SingletonObject.getObject();
}
}输出结果
In a private constructor
热门推荐
10 新年门口花束祝福语简短
11 盘锦结婚祝福语大全简短
12 父母生日祝福语 简短独特
13 家庭恩爱祝福语简短英文
14 高考俄语祝福语大全简短
15 虎年祝福语 诗句唯美简短
16 生日婚礼祝福语简短精辟
17 虎年喝酒拜年祝福语简短
18 教师闺蜜祝福语简短