• 技术文章 >Java >java教程

    java接口可以继承吗?

    青灯夜游青灯夜游2019-11-18 14:38:58原创4765

    java接口可以继承吗?

    java接口可以继承,而且是多继承,但是只能是接口继承接口,类只能实现接口。一个接口可以继承另一个或多个接口,一个普通类可以实现多个接口。

    接口是常量值和方法定义的集合。接口是一种特殊的抽象类。

    java类是单继承的。classB Extends classA

    java接口可以多继承。Interface3 Extends Interface0, Interface1, interface……

    不允许类多重继承的主要原因是,如果A同时继承B和C,而B和C同时有一个D方法,A如何决定该继承那一个呢?

    但接口不存在这样的问题,接口全都是抽象方法继承谁都无所谓,所以接口可以继承多个接口。

    注意:

    1)一个类如果实现了一个接口,则要实现该接口的所有方法。

    2)方法的名字、返回类型、参数必须与接口中完全一致。如果方法的返回类型不是void,则方法体必须至少有一条return语句。

    3)因为接口的方法默认是public类型的,所以在实现的时候一定要用public来修饰(否则默认为protected类型,缩小了方法的使用范围)。

    示例:

    interface A{
        void a1();
    }
     
    interface B{
        void b1();
    }
     
    interface C extends A,B{//注意该语法只对接口的继承是合法的
        void c1();
    }
     
    class D implements C{
     
        @Override
        public void a1() {}
     
        @Override
        public void b1() {}
     
        @Override
        public void c1() {}
    }

    接口特性:

    1、接口是隐式抽象的,当声明一个接口的时候,不必使用abstract关键字。

    2、接口中每一个方法也是隐式抽象的,声明时同样不需要abstract关键字。

    3、接口中的方法都是公有的。

    4、编译时自动为接口里定义的方法添加public abstract修饰符

    5、Java接口里的成员变量只能是public static final共同修饰的,并且必须赋初值,可以不写public static final,编译的时候会自动添加。

    以上就是java接口可以继承吗?的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:java 接口 继承
    上一篇:java什么反射? 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • java if(x)是什么意思• java中long与Long的区别• java什么反射?• java 变量会被继承吗
    1/1

    PHP中文网