super关键字--java学习第10天

super:用来调用父类中指定的操作,可以用来修饰属性、方法、构造器。          this:用来调用本类对象的操作。

1)当子类与父类中有同名的属性时,可以通过”super.此属性“显示的调用父类中声明的属性。           若想调用子类的同名的属性时,”this.此属性“,默认调用的是this。

2)当子类重写了父类的方法以后,在子类中若想再显示的调用父类的被重写的方法时,就需要使用”super.方法“。

3)super修饰构造器,通过在子类中使用”super(参数列表)“来显示调用父类中指定的构造器。                                                                                >在构造器内部,”super(参数列表)“必须要声明在首行!                   >所以构造器内部,”this(参数列表)“或”super(参数列表)“只能出现一个。                                                                                     > 在构造器中,不显示的调用”this(参数列表)“或”super(参数列表)“其中任意一个时,默认调用的是父类空参的构造器。                                      >其实父类构造器也有其super,只是一般不写出来,默认的就是object类。

建议:设计一个类时,尽量要提供一个空参的构造器。因为当父类没有定义空参构造器时,子类构造器再默认调用super()时便会报错,所以尽量定义。

子类对象实例化





你可能感兴趣的:(super关键字--java学习第10天)