1 问题
在类的继承中,我们知道了只能继承一个父类,在使用中就会降低我们编写代码的效率,如果要实现多继承就只能多创造类。
2 方法
在同时可用内部类和接口时,优先使用接口,因内部类需要应用于继承关系,而接口可用于继承也可用于其它,比较灵活。定义类实现接口,需要实现其所有父接口的方法.
//接口实现多继承 interface IA{//父接口A void funA(); } interface IB {//父接口B void funB(); } interface CImpl extends IA,IB{//接口可继承多个父接口,用,分隔开即可,子接口的命名可选择较为重要的父接口进行命名或自行命名,一般子接口后添加Impl用以区分 void funC(); } class Impl implements CImpl{//定义类实现接口(也可直接实现父接口(多个)) public void funC(){//抽象方法的实现 System.out.println("你昨天真好看!"); } public void funA(){ System.out.println("你今天真好看!"); } public void funB(){ System.out.println("你明天真好看!"); } } public class Test1{ public static void main(String[] args){ Impl im=new Impl();//实例化对象 im.funA(); im.funB(); im.funC(); } } |
3 结语
通过接口实现多继承可以大大提高效率,并且在使用过程中也不难看出引入一个接口(interface)也是一件比较轻松的事。