用适配器过度掉一些接口里的方法 ,让子类只去重写接口里的一部分方法
按照你的来bai:具体类duC 继承抽象类B ,抽象类B实现 接口A。
那么要求:(C+B+...) 2者(或更多zhi)合计必须实现接口A中的所有抽象方法。可以重复(C重写某一方法,B也可以重新该方法)。所以不是你说的那种C要重写A和B所有的抽象方法。
但C是肯定要重写B所有的抽象方法。但不一定要重写A所有的抽象方法。
如果抽象类B中只重写了A中一部分方法,那么C必须重写接口A中剩下一部分抽象方法。
总结:
C+B 中合计的重写方法,必须 =A中所有的方法。
C,B中若有扩展的方法,就>A中所有的方法。
interface interFace_01{
public abstract void run();
public abstract void jump();
public abstract void roll();
}
//写个适配器 必须用抽象类 因为抽象类不能自己创建实例
//让其子类去创建对象 子类对象引用父类对象
abstract class Object_01 implements interface_01{
//方法体必须为空 过滤掉具体类中不想实现的方法
public void roll(){}
}
//具体类
class Person extends Object_01{
@Override
public void run(){
System.out.print("person can run");
}
@Override
public void jump(){
System.out.println("Person can Jump");
}
}


京公网安备 11010502036488号