多继承,即一个类继承了多个基类。
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机制一定会重新编写函数,所以不会出现多继承带来的重名问题。