黑马程序员技术交流社区
标题:
关于继承时父类构造法方法为私有时
[打印本页]
作者:
王琪
时间:
2014-6-8 21:30
标题:
关于继承时父类构造法方法为私有时
本帖最后由 王琪 于 2014-6-8 21:35 编辑
package dom;
class myperson{
private String name;
private int age;
private myperson(){
System.out.println("****");
}
public void setName(String name){
this.name=name;
}
public void setAge(int age){
this.age=age;
}
public String getName(){
return this.name;
}
public int getAge(){
return this.age;
}
}
class student extends myperson{
private String school;
public student(){ //这里出错,不通过
System.out.println("##");
}
public String getSchool() {
return school;
}
public void setSchool(String school) {
this.school = school;
}
}
public class text2 {
public static void main(String[]args){
student stu=new student();
}
}
复制代码
作者:
王琪
时间:
2014-6-8 21:37
我发先父类的构造方法一定不可以用private修饰?因为子类的构造方法隐含了super()
作者:
woshihq
时间:
2014-6-8 21:37
同求问!!!!!!!!!!!!
作者:
123_yaya
时间:
2014-6-8 21:44
私有构造方法是不让别人构造的。你继承了父类,那么子类构造函数相当于有一句缺省的super();这和你把父类构造函数设为私有的相矛盾了。所以出错。一般来说,这个类是单例的才设置私有构造函数。
作者:
王琪
时间:
2014-6-8 21:53
嗯,应该是这样的吧 >.< 单例设计模式应该不能用到继承吧?
谢谢你
作者:
David.L
时间:
2014-7-24 21:20
123_yaya 发表于 2014-6-8 21:44
私有构造方法是不让别人构造的。你继承了父类,那么子类构造函数相当于有一句缺省的super();这和你把父类构 ...
多谢提醒,搜索进来的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2