Java程序设计基础第4章 继承与多态
本章主要内容
继承机制
类的继承
对象类型转换和多态
关键词final
抽象方法与抽象类、接口
内部类和匿名内部类
Object类和包装类
第4章 继承与多态
继承是Java中解决代码重用问题的一个重要的机制。继承机制让我们可以在现有类的基础上派生出新类。新类具有现有类的属性和行为,还可以根据需要增加新的属性和行为。本章将介绍继承及其语法知识、类的继承、方法覆写、多态的基础知识、对象类型转换、Object类等内容。
继承机制
继承机制
代码重复
额外的工作和风险
代码的复杂度也会大幅度提高
重复部分代码的调整
继承就是允许定义一个类作为另一个类的扩充版本
单继承
类的继承
定义子类
子类对象的初始化
继承中的访问控制
继承
extends
class SubClass extends BaseClass{
//子类类体,定义子类的新成员
}
子类中只需定义构造方法、新增的或需要改写的成员属性或方法
子类的对象拥有父类中定义的所有成员
继承与构造方法
子类对象中从父类继承来的那部分成员变量需调用父类的构造方法完成初始化
子类对象初始化时需调用父类的构造方法
隐式
调用父类的缺省构造方法
显式
super(参数表);
此句必须放在子类构造方法中的第一句
子类对象的初始化
若在程序中首次使用某个类,系统将载入这个类的类文件
从父类到子类,直至当前类,依次初始化静态成员变量
从父类到子类,直至当前类,依次初始化对象的成员变量
调用当前类的构造方法,该构造方法会首先调用父类的构造方法,直至类Object
从Object类开始执行初始化块和构造方法,然后回归执行其子类的初始化块和构造方法,依此类推,直至当前类的初始化块和构造方法。
继承与访问控制
子类的对象虽然拥有父类中定义的所有成员,但子类中不能访问父类中的私有成员
若子类和父类不在同一包中,子类中不允许访问父类中默认情况下的成员
protected修饰的成员可以在同一包内的类中或子类中访问
覆写
覆写(Override)
子类中允许定义一个与父类中方法名和参数表完全相同的方法
方法体不同
若子类和父类不在同一包中,子类中不允许访问父类中默认情况下的成员
super
重载与覆写
Java程序设计基础第4章 继承与多态 来自淘豆网m.daumloan.com转载请标明出处.