继承的特性
1. 子类可以继承父类中除private之外的属性,方法。
2. 子类可以用自己的方式实现父类方法。
3. 子类可以拥有自己的方法,也就是可以在父类的基础上进行扩充。
4. java仅支持单继承,多重继承。
5. 提高了代码的耦合性。
继承关键字
extands :子类继承父类,单一继承
implements :继承接口类,可以继承多个接口
super:super关键字来实现对父类成员的访问,用来引用当前对象的父类。
this:指向自己的引用。
final :final声明类可以把类定义为不能继承的,即最终类;或者用于修饰方法,该方法不能被子类重写。实例变量也可以被定义为 final,被定义为 final 的变量不能被修改。被声明为 final 类的方法自动地声明为 final,但是实例变量并不是 final
构造器
子类不继承父类的构造器(构造函数或构造方法),它只是调用。super关键字可调用父类带参数的构造器,子类可自动调用无参数的构造器。
重写与重载
重写是子类对父类中的方法进行重编,返回值和形参都不能变,外壳不变,核心内容可变。父类方法抛出的异常,子类只能抛出其子类异常。
重载(overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表。
总结
方法的重写(Overriding)和重载(Overloading)是java多态性的不同表现,重写是父类与子类之间多态性的一种表现,重载可以理解成多态的具体表现形式。
- (1)方法重载是一个类中定义了多个方法名相同,而他们的参数的数量不同或数量相同而类型和次序不同,则称为方法的重载(Overloading)。
- (2)方法重写是在子类存在方法与父类的方法的名字相同,而且参数的个数与类型一样,返回值也一样的方法,就称为重写(Overriding)。
- (3)方法重载是一个类的多态性表现,而方法重写是子类与父类的一种多态性表现