美文网首页
NO.13 父类没有空参构造的继承

NO.13 父类没有空参构造的继承

作者: WXFA | 来源:发表于2017-07-25 00:02 被阅读0次

当子类继承父类时,如果父类中只写有参的构造方法而没写空参的构造方法,子类就继承不了

解决方法1:在父类中添加一个空参的构造方法

解决方法2:在子类中的无参构造方法里添加this(赋值)语句,在子类的有参构造方法里添加

super(成员变量)语句,然后再main方法里创建对象,然后再调用getXxx方法就可以了

解决方法3:在子类中的无参构造方法里添加super(赋值)语句,在子类的有参构造方法里添加

super(成员变量)语句,然后在main方法里创建对象,然后再调用getXxx方法就可以了

解决方法4:在子类中不用写空参的构造方法,在有参的构造方法里添加super(成员变量),然后

在main方法里创建对象并赋值然后再调用getXxx方法

public static void main(String[] args) {

Son2 s2 = new Son2("张三",23);                    // 解决方法4   

System.out.println(s2.getName() + "...." + s2.getAge());

}

}

class Father2 {

private String name;

private int age;

/*public Father2() {

System.out.println("Father2  类的空参构造");

}*/

public Father2(String name,int age) {

this.name = name;

this.age = age;

System.out.println("Father2  类的有参构造");

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

}

class Son2 extends Father2 {

/*public Son2() {

* this("王五", 25);          //子类无参构造this()语句访问,调用本类的构造方法,执行父类的有参构造

* super("李四",24);        //子类无参构造super()语句访问父类的有参构造,调用父类的构造方法

}*/

public Son2(String name,int age) {    //子类有参构造访问父类的有参构造

super(name,age);

}

}

相关文章

  • NO.13 父类没有空参构造的继承

    当子类继承父类时,如果父类中只写有参的构造方法而没写空参的构造方法,子类就继承不了 解决方法1:在父类中添加一个空...

  • 关于构造函数

    父类有参构造函数的作用 子类不能继承父类的构造函数 子类继承父类后,如果想要初始化,必须保证父类已经被构造,此时就...

  • 继承与组合复用

    继承 继承体系初始化顺序 创建子类对象时,默认先调用父类的无参构造方法,当父类中存在多个构造方法,但没有无参构造方...

  • Java面向对象

    1、子类实例化时会默认调用父类无参构造函数,如果父类没有无参构造函数,则需要子类构造函数显示调用父类有参构造函数 ...

  • C++ 从入门到放弃 (Day-07)

    父类的构造函数 ◼ 子类的构造函数默认会调用父类的无参构造函数◼ 如果子类的构造函数显式地调用了父类的有参构造函数...

  • 继承中执行顺序讨论

    继承中,子父类的构造函数(构造函数不被继承)1.子类必须调用父类的构造函数(构造函数不被继承)(1)如果没有写调用...

  • 面向对象继承的方式

    创建父类 原型链继承:将父类的实例作为子类的原型 借用构造函数继承:在子类型构造函数的内部调用父类的构造函数 组合...

  • 构造函数的继承

    猜一猜,可不可以继承父类的构造方法?子类在默认情况下不继承父类的构造器。子类继承父类的构造函数是有条件的,遵守以下...

  • 面向对象(六)-派生类的构造函数

    派生类的构造函数 语法 如果不显式声明调用父类的无参构造函数(base()),那么默认会调用父类的无参构造函数。 ...

  • 2021-03-15 Dart中的多继承

    extends 继承implements 继承(父类方法必须要实现)with 多继承(父类不能有构造方法)on ...

网友评论

      本文标题:NO.13 父类没有空参构造的继承

      本文链接:https://www.haomeiwen.com/subject/khbikxtx.html