继承是有已有的类创建新类的机制。运用继承可先创建一个通用的类,该类定义了一系列相关属性的一般特性。该类可以被更具体的类继承,每一个具体的类可以增加一些自己特有的东西。Java中被继承的类叫超类,继承超类的叫子类。子类不可以继承超类访问权限为private的成员变量和方法,子类可以重写超类的方法及命名与超类同名的成员变量。Java不支持多重继承,及一个类从多个超类派生的能力。、
子类
继承一个类只要用extends关键字吧一个类的定义并到另一个类中就可以。
格式
class SubClass extends SuperClass
{ }
子类的继承
子类通过隐藏超类的成员变量和重写超类的方法,可以把超类的状态和行为改变为自身的状态和行为
例如
class SuperClass{ int a; void setA(){ a=0; } } class SubClass extends SuperClass{ int a;//隐藏父类的成员变量a void setA(){//重写父类的方法setA() a=10; } }
super关键字
Java中使用关键字super表示父类对象,通过在子类中使用super做前缀可以引用被子类隐藏的父类的成员变量或被子类重写的父类方法,super用来引用当前对象的父类虽然构造方法不能继承但利于super关键字子类构造方法可以调用父类的构造方法
1.操作被隐藏的变量和方法
如果成员变量x和方法y()分别是子类隐藏的父类的变量和方法
则格式
super.x;//表示父类的成员变量x super.y();//表示父类的方法y()
2.使用super调用父类的构造方法
子类不能继承父类的构造方法,如果子类想使用父类构造方法必须在子类的构造方法中利用super 来调用而且super必须是子类构造方法中第一条语句