Class 为什么一个类可以实现多个接口?
这是关于oop中接口的唯一问题,我似乎无法完全解释。那么,为什么在oop中一个类可以实现多个接口呢Class 为什么一个类可以实现多个接口?,class,oop,inheritance,interface,implements,Class,Oop,Inheritance,Interface,Implements,这是关于oop中接口的唯一问题,我似乎无法完全解释。那么,为什么在oop中一个类可以实现多个接口呢 如果你能提供一些例子,那就太好了。提前感谢。概念示例 java.util Class HashMap<K,V> 我认为多重接口的方式是接口就像动词或形容词,类就像主语 tiger可以运行,因此tiger类可以实现Runnable接口 老虎可以吃东西,因此tiger类可以实现Eatable接口 因为类的实例可以有不同的行为,所以我们可以有不同的对应接口 现实例子 java.util C
如果你能提供一些例子,那就太好了。提前感谢。概念示例
java.util Class HashMap<K,V>
我认为多重接口的方式是接口就像动词或形容词,类就像主语
tiger可以运行,因此tiger类
可以实现Runnable接口
老虎可以吃东西,因此tiger类
可以实现Eatable接口
因为类的实例可以有不同的行为,所以我们可以有不同的对应接口
现实例子
java.util Class HashMap<K,V>
java.util类HashMap
它实现了Serializable、Cloneable、Map
所有接口都是类HashMap的特性。首先,java不支持多重继承,因此不能同时扩展两个类。但是,java支持多个接口的实现。Mingyu给出的示例对我来说似乎很完美。接口本质上是抽象的(当然不是定义,只是说),因此所有方法都必须在具体的子类中实现,这样我们就避免了致命的死亡钻石,支持多重继承的方式本身就是允许多接口实现的答案
还有许多其他用途,但由于上面的解释,没有任何其他理由限制多个实现的概念……据我所知。Java类无法扩展多个类,因为diamond♦ 问题钻石♦ 由于构造函数链接而出现问题。 接口中不存在构造函数,因此没有菱形♦ 如果我们实现多个接口,就会出现问题。这就是为什么Java类可以实现多个接口