我以前学过了C++,现在在学Java。
C++肯定不是微软开发的。首先C起源于贝尔实验室,后来Bjarne Stroustrup(贝尔实验室成员)从一个语言(名字我忘了)借鉴了面向对象的方法,引入了C中形成了C++。所以说C++起源于贝尔实验室不为过。而后贡献最大的该是惠普实验室,引入了STL的概念。
微软只不过开发了VC,一个IDE而已,而且其对C++的支持之低备受诟病。
而Java的确是SUN做的。他们起初是想开发一个完全跨平台的语言(因为他们发现在C++上做太难了),所谓完全跨平台不仅仅指在windows,linux上运行无碍,也可以在手机,甚至是空调,自动售货机上都能运行的程序。
Java是基于C++开发的。C++是一个面向对象的语言,但是你也可以用它编写面向过程的程序,因为它基本兼容C。而Java是完全面向对象的。
所谓C++以后不行了也是扯淡。C++由于兼备高低级语言的特性,适于编写底层的,或者大型的程序。操作系统,硬件驱动多数由C++编写成。起码在十年之内,C++还有旺盛的生命力。
而Java适合编写可移植的程序。而且由于Java编写出来的程序不是可执行文件,而是字节码(.class),执行时需要Java虚拟机实时解释,使得它可移植性强(只需在不同平台上实现Java虚拟机即可,无需重新编译),但是执行效率低。
在学习上,Java比C++要求严多了。各种类型转换必须显式说明,没有了指针和宏,类单继承,我学习时因为C++的习惯写一个程序常常得修改很多次。
所以如果你想写手机游戏,Internet小程序,Java是好选择,但是如果写大型应用程序,我还是倾向于C++。
取消
评论