谈谈多继承【C++ & java】

来源:互联网 发布:爱因斯坦 引力波 知乎 编辑:程序博客网 时间:2024/06/07 09:08

多继承,即一个类继承了多个基类。


C++:

class A{public :void sayHi();};class B{public :void sayHi();};class C : public A, public B{};

在C++中,支持多继承。上面中,class C 继承了A 也继承了B。


继承带来的问题:

显然,继承带了的一个最明显的问题就是重名。class C继承了class A的方法sayHi(), 也继承了class B的方法sayHi().


在JAVA中,只支持单继承。

但是可以通过多实现来间接实现多继承机智。


public interface A{public void sayHi(){};}public interface B{public void sayHi(){};}public class C implements A, B{public void sayHi(){  // write sayHi function here }}

因为JAVA中的implements机制一定会重新编写函数,所以不会出现多继承带来的重名问题。

0 0
原创粉丝点击