【1】super:指的是: 父类的
【2】super可以修饰属性,可以修饰方法
在子类的方法中,可以通过super.属性 super.方法 的方式,显示的去调用父类提供的属性,方法。在通常情况下,可以省略不写。
在这种情况下 super.就不能省略不写了。
【3】super修饰构造器:
其实我们平时写的空构造器的第一行都有:super()-----》作用:调用父类的空构造器,只是一般我们省略不写。
(所有构造器的第一行默认情况下都有super(),但是一旦你的构造器中显示的使用super调用了父类构造器,那么这个super()就不该会给你默认分配了。如果构造器中没有显示的调用父类构造器的话,那么第一行都有super(),可以省略不写 )
如果构造器中已经显示的调用super父类构造器,那么它的第一行就没有默认分配的super()。
在构造器中,super调用父类构造器和this调用子类构造器只能存在一个,两者不能共存。
因为super修饰构造器要放在第一行,this修饰构造器也要放在第一行:
改正二选一即可:
【4】以后写代码构造器的生成可以直接使用IDEA提供的快捷键:
alt+insert(生成set和get方法)