Java的构造方法的加载机制Constructor

2026-04-21 08:55:43

1、测试:创建对象时,会先调用父类的构造方法,再调用自身的构造方法。

Java的构造方法的加载机制Constructor

2、上面的测试可以知道:如果子类的构造方法不用super指定父类的构造方法,则会调用父类的无参构造方法。

如果指定使用super指定父类的构造方法,则其在调用父类构造方法时,就会调用指定的构造方法。

Java的构造方法的加载机制Constructor

Java的构造方法的加载机制Constructor

3、注意super必须放在子类构造方法的第一行,否则会报错。

Java的构造方法的加载机制Constructor

4、如果不使用super指定父类的构造方法,而把父类的无参构造方法删除,则会报错,再一次说明当不使用super指定父类的构造方法时,调用的是父类的无参构造方法。

Java的构造方法的加载机制Constructor

5、测试:使用this调用别的构造方法,会不会导致父类中的构造方法执行两次。

结论:不会,父类中只会执行一个构造方法,this指定的构造方法对应的父类构造方法会执行。

“Father”并没有输出,说明父类的无参构造方法没有执行。

Java的构造方法的加载机制Constructor

Java的构造方法的加载机制Constructor

6、this和super不能同时在一个构造方法中出现。this和super必须放在构造方法的第一行。

调用构造方法的语句,必须放在第一行,即this和super的语句必须放在第一行。

Java的构造方法的加载机制Constructor

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:27
  • 阅读量:161
  • 阅读量:191
  • 阅读量:113
  • 阅读量:185
  • 猜你喜欢