问题描述
例如:接口中定义了两个函数A、B一个抽象类实现了这个接口中的一个函数A请教一下问题这个抽象类的子类是因为其父类没有实现函数B,从而需要自己去实现函数B,因为接口就是一个契约。那么既然是契约,为什么抽象类可以只实现接口中的一个函数A,不实现函数B也仍然可以编译通过呢?
解决方案
抽象类不是具体实现类,可以实现接口中的方法,但不是必须的,如果不实现就相当于从接口把这个方法“继承”过来变成了一个抽象方法。而具体实现类,才必须实现所有接口中的方法和所有抽象父类中的抽象方法。
解决方案二:
1、接口里的方法都是public 抽象的 ------->契约2、抽象类里的方法可以是抽象 也可以是具体的 ------->共性 即子类都可以复用3、具体类里的方法只能是具体的 ------->个性
时间: 2024-10-25 10:58:13