文章目录
问题原因一个接口可以同时继承多个接口接口不能实现任何接口一个类可以实现多个接口一个类只能继承一个父类总结:问题原因
今天在看集合源码的时候,突然看到接口继承接口,觉得有点差异,以前写代码也就是类继承一个类,实现接口。这样写的多了,突然看到接口继承接口就有点诧异了,以为哪里不对。就测试,查阅了一些资料一个接口可以同时继承多个接口
书写接口测试public interface Jiekou extends Jiekou1,Jiekou2{void jiekou();}public interface Jiekou1 {void jiekou1();}public interface Jiekou2 {void jiekou2();}public interface Jiekou3 {void jiekou3();}
如上,是没有问题的,所以Java是支持接口多继承,
接口不能实现任何接口
代码验证public interface Jiekou implements Jiekou2{void jiekou();}
如图提示:No implements clause allowed for interface
如上-接口不能实现任何接口
一个类可以实现多个接口
类实现多接口代码public class Aggregate implements Jiekou,Jiekou3{@Overridepublic void jiekou() {}@Overridepublic void jiekou1() {}@Overridepublic void jiekou2() {}@Overridepublic void jiekou3() {}}
如上 类实现多接口也是没有问题的
一个类只能继承一个父类
首先构建父类和子类代码public class FatherOne {}public class FatherTwo {}//类继承一个类是没有问题的public class Son extends FatherOne{}
如果多个类就会提示你: Class cannot extend multiple classes
总结:
一个类只能extends一个父类,但可以implements多个接口。java通过使用接口的概念来取代C++中多继承。与此同时,一个接口则可以同时extends多个接口,却不能implements任何接口。因而,Java中的接口是支持多继承的。