前言
我一直在想一个事:Java只能继承一个类,那么C++为什么就能继承多个类呢
……不想了,打把吃鸡!See you!
……不行!还是自己研究下!
我对队友说:有队友逃跑或加入竞赛失败,你们可以在飞机起飞前安全退出,不影响任何屁事。只听见队友应了声:TM的老子差3分上王牌!
哼,差3分上王牌,不知道人家从王牌升到了星钻呢
1.我是来凑字数的
自己在Java写了一个程序,然后在C++写了一个程序
Java:
package XXX;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Abc extends JFrame {
public static void main(String [] args){
Abc a =new Abc();
}
public Abc(){
this.setSize(350,240);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
}
C++:
#include<iostream>
using namespace std;
class Abc
{
public:
Abc()
{
cout<<"I'm Talking now.";
}
};
class aBC
{
public:
aBC()
{
cout<<"I'm also Talking now.";
}
};
class AbC :public Abc,public aBC//继承
{
//TODO
};
int main()
{
AbC a();
return 0;
}
2.看看两个程序的优缺点
Java程序:
优:容易实现、扩展
缺:只能单继承、父类修改后子类也要修改。
C++程序:
优:可以实现多继承、扩展性可提高、父类与子类相似但又不同
缺:灵活性降低
严重缺点:
1.程序猿其实根本用不上它
对于C++多继承,到现在还是有争议的,所谓C++之父云:“我创造了这门语言,可我还没有完全掌握它”
2.容易混淆
如果调用基类的基类中的方法,容易造成歧义
3.无用处
一般的Java都是一个继承完事,碰到相对复杂的也是使用大量的接口而不是多继承
所以C++的多继承实际不靠谱!
只不过画蛇添足而饮酒晚矣!