私有构造函数和继承(Java)
我有一个构造函数接受参数的第一个类
public class First {
First(Object o){
o.toString();
}
}
我有第二个类,它扩展了第一个类
public class Second extends First {
Second(Object o) {
super(o);
}
}
我想让Second
类的构造函数保持私有,以便能够实例化这个类的唯一一个实例(例如,使用单例模式),但编译器不允许我这样做
如果我不能在这里将构造函数设置为private,我该怎么做才能只允许创建类的一个实例
# 1 楼答案
它开始工作了
# 2 楼答案
# 3 楼答案
您可以毫无问题地将
Second
的构造函数设为私有。除非使用嵌套类,否则不能将First
的构造函数设为私有举个例子,这很好: