该用户从未签到
|
目的:实现代码重用
1)将类的一个对象作为类的一个属性
2)继承
继承的定义:在现有类的基础上重新构造一个新类。
*支持多层继承但不支持多重继承
*子类的代码覆盖父类的代码时,内存中只存在子类的代码,父类的代码不存在。
*若子类的属性覆盖父类的属性,则调用父类公有方法时采用就近原则。
*子类不能继承父类的私有成员和构造函数
*子类继承父类,子类可以看成是父类类型
*父类必须初始化自己的属性,而不要让子类操作,因此子类的构造函数中没有显示
地调用父类的构造函数,系统会默认调用父类的无参构造函数。
继承的应用场合:
接口与接口之间,抽象类与抽象类之间,实现类与抽象类之间;
而一般不用于实现类之间地继承。
继承最好不要超过2层。
方法的重载:
在同一个类中多个方法具有相同的方法名,不同的参数列表。
方法的覆盖:
对父类方法进行方法体的修改,即不能改变方法名,返回值和参数列表。
并且子类的覆盖函数不能采用比被覆盖的方法更严格的访问权限。
1、 在子类覆盖父类的方法,应尽量调用父类覆盖前的方法的功能。
2、 尽量不要在子类中对父类具体业务实现方法进行覆盖,只对父类的抽象功能进行覆盖。
|
|