3、用继承修改旧的功能。
现在如果一代Son1的功能打孩子,也就是方法hitChild()里边的功能实现有问题,我们要把具体实现修改掉,那么我们可以重新写一个新的二代子类Son11继承自一代子类Son1,并重写其hitChild()方法。
//二代子类 |
4、用接口实现增加新的功能。
现在类Son1已经有了“打孩子”功能(也就是方法),而我们有了新的需求,我们需要它还要有一个新的功能“宠孩子”(新方法pet();)。而旧的代码不能动!那么我们可以定义一个新的接口(PetInterFace),接口里定义这个方法pet()的声明。再重新写一个二代子类Son11,让它先继承类Son1,同时实现接口 PetInterFace!并实现接口里的 pet()方法!
//新接口 //二代子类 |
这样这个二代子类既有了老的方法,又有新的功能!