Java和C++它们都是面向对象的语言,也就是说,它们都可以实现面向对象的思想(包装、继乘、多态)。由于C++与C语言用户兼容,以照顾大量C语言,它只会成为一种C语言,或多或少会影响其面向对象的完整性!
Java是一种完全面向对象的语言,句法更清晰,规模更小,更容易学习。在对各种程序设计语言进行深入细致研究的基础上,放弃了其他语言的缺点,从根本上解决了c++的固有缺陷。
Java和c++相似之处多于不同之处,但两种语言的主要差异使Java更容易学习,编程环境更简单。
这也是零基础学习Java需要理解的问题,Java需要学习更多的内容,想要快速掌握Java语言,首先需要一个完整的系统新的Java入门教程,这里推荐B站,我看到最新的Java17版的动力节点
Java和C++的区别:1. Java源代码将首先编译成中间代码,然后由解释器解释为机器代码。对于Java,中间代码是字节代码(.class),JVM中内置了解释器。
2. C++一次编译源代码,在编译过程中直接链接,形成机器代码。
3. C++Java的执行速度比Java快,但Java可以使用JVM跨平台。
4. Java是一种纯面向对象的语言,必须在类中定义所有代码(包括函数和变量)。C++还有面向过程的东西,比如全局变量和全局函数。
5. C++Java中没有指针,但有引用。
6. C++支持多继承,Java中类是单继承。但是继承是传递的,Java中的接口是多继承的,类对接口的实现也是多实现的。
7. C++在Java中,JVM有自己的GC机制,虽然有自己的GC机制,但也会出现OOM和内存泄漏的问题。C++Java中Object的finalize方法包含分析函数。
8. C++运算符可以重载,但Java不能重载。同时C++支持强制自动转型,Java不能,Clascascastexception(类型不匹配)会出现。