继承 在Java中占有重要的一环
主要用到的是关键词extends
超类 是子类的基类 子类拥有的功能比超类更加丰富
在通过扩展超类定义子类的时候 仅需要指出子类和超类的不同之处 然而 超类中有些方法对子类不一定适用 为此 需要提供一种新的方法来覆盖超类中的这个方法
例如 Manager继承Employee类
Manager在使用getSalary时 出现问题 因为需要访问超类的私有域salary域 这是不允许的 只有超类Employee才可以访问
如果Manager类的方法一定要访问超类的私有域 就需要通过公有接口 超类的getSalary可以提供
public double getSalary(){
double baseSalary =super.getSalary();
return baseSalary+bouns;
}
这里的super是一个指示编译器调用超类方法的特殊关键字 而之前涉及到this
在这里区分一下
关键词this有两个用途
1.引用隐式参数
2.调用该类其他的构造器
关键词super也有两个用途
1.调用超类的方法
2.调用超类的构造器
使用super调用构造器的语句必须是子类构造器的第一条语句