面向对象之二 继承
是面向对象语言重要设计思想, 实现代码可重用,可扩展
子类继承父类使用extends关键字,一个类只能直接继承一个父类,但是可以间接继承。继承之
后子类可以调用父类的所有非私有属性和非私有方法。
继承的格式:访问权限修饰符 子类名 extends 父类名{子类体}
继承具有传递性:C类从B类继承,B类又从A类继承 那么C类就具有B类和A类的所有非私有属
性和非私有方法。如果一个类没有显示的继承其他类,那么默认会继承自Object, Object是所有类的
父类(基类 超类)。
继承中的构造方法:使用super关键字调用父类任意一个构造方法,必须写在构造方法的第一
行。用super.成员变量名来引用父类成员变量。用super.方法名(参数列表)访问父类的方法。用
super.构造方法(参数列表)访问父类构造方法 。super不会创建对象,而是将父类中的信息加载到
子类对象中存储。
重写
与类中的方法名一致,参数,返回值一致 访问权限等于或大于父类权限
@Override是java中的注解标签用来标记的
@Override作用在方法上,用来表示此方法是从父类中重写而来的,在编译期间检测语法格式。
注:构造方法,静态方法不能重写,成员变量不存在重写
抽象类
抽象方法是一种特殊的方法:它只有声明,而没有具体的实现。具体的实现在子类中实现。
抽象方法必须用abstract关键字进行修饰。