Java中super与this关键字有何区别?

2026-04-02 11:120阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计795个文字,预计阅读时间需要4分钟。

Java中super与this关键字有何区别?

使用super调用父类构造方法时,如果没有显式声明构造方法,则会自动生成一个无参数的默认构造方法。例如:

1.先使用一个无参数的父类构造方法验证一下,执行子类构造方法时,会自动调用父类的无参数构造方法。

用super调用父类构造方法类如果没有显式声明构造方法,则自动生成无参数的默认构造方法。1.先用一个无参数的父类构造方法验证一下,执行子类构造方法会自动调用父类的构造方法。测试代码 用super调用父类构造方法类如果没有显式声明构造方法,则自动生成无参数的默认构造方法。1.先用一个无参数的父类构造方法验证一下,执行子类构造方法会自动调用父类的构造方法。测试代码:class Human3{ public Human3(){ System.out.println("构造一个人"); }}class Pupil3 extends Human3{ public Pupil3(){// super(); //本句注释与不注释执行结果是一样的 System.out.println("构造了一个学生 "); }}public class Example3 { public static void main(String[] args) { // TODO Auto-generated method stub Pupil3 pupil3=new Pupil3(); }}

运行结果:

表明,子类构造方法会默认调用父类的构造方法,对于无参的父类构造方法,写不写super()输出结果是一样的。

2.用一个有参数的父类构造方法验证一下。执行子类构造方法会自动调用父类的构造方法。
阅读全文

本文共计795个文字,预计阅读时间需要4分钟。

Java中super与this关键字有何区别?

使用super调用父类构造方法时,如果没有显式声明构造方法,则会自动生成一个无参数的默认构造方法。例如:

1.先使用一个无参数的父类构造方法验证一下,执行子类构造方法时,会自动调用父类的无参数构造方法。

用super调用父类构造方法类如果没有显式声明构造方法,则自动生成无参数的默认构造方法。1.先用一个无参数的父类构造方法验证一下,执行子类构造方法会自动调用父类的构造方法。测试代码 用super调用父类构造方法类如果没有显式声明构造方法,则自动生成无参数的默认构造方法。1.先用一个无参数的父类构造方法验证一下,执行子类构造方法会自动调用父类的构造方法。测试代码:class Human3{ public Human3(){ System.out.println("构造一个人"); }}class Pupil3 extends Human3{ public Pupil3(){// super(); //本句注释与不注释执行结果是一样的 System.out.println("构造了一个学生 "); }}public class Example3 { public static void main(String[] args) { // TODO Auto-generated method stub Pupil3 pupil3=new Pupil3(); }}

运行结果:

表明,子类构造方法会默认调用父类的构造方法,对于无参的父类构造方法,写不写super()输出结果是一样的。

2.用一个有参数的父类构造方法验证一下。执行子类构造方法会自动调用父类的构造方法。
阅读全文