子类与继承
1.成员变量的隐藏
【说明】:对于子类可从父类继承成员变量,只要在子类中声明的成员变量和父类的成员变量同名,子类就隐藏了父类变量。
【注意】:子类继承的方法可操作被子类继承和隐藏的成员变量。而子类新定义的方法不能操作子类隐藏的变量。
2.方法的重写(Override)
class A{
protected float(float x,float y){
return x-y;
}
}
class B extends A{
float f(float x,float y){reurn x+y;} //非法,降低了访问控制
}
class C extends A{
public float(float x,float y){return x*y;} //合法,提高了访问权限
}
2.1【重写语法规则】:子类定义一个方法,这个方法的类型和父类方法的类型一致或是父类方法的子类型,且该方法的名字、参数个数和类型和父类完全相同。
2.2【重写目的】:切合具体环境下的状态和行为要求。
2.3【重写后的方法调用】:
子类创建一个对象,如果子类(未)重写父类方法,则运行时调用子类(继承)重写的方法。
2.4【注意事项】:重写父类方法时,不能降低方法的访问权限!
3.super关键字
3.1用super操作被隐藏的成员变量和方法
3.2使用super调用父类的构造方法
子类不继承父类的构造方法,若想使用父类的构造方法:在子类的构造方法首行使用super来调用。
4.final关键字
方法:在子类的构造方法首行使用super来调用。