Java和C++的九点区别
来源:互联网 发布:c语言运算符号有哪些 编辑:程序博客网 时间:2024/05/22 13:38
1、C++多重继承机制,而JAVA只允许单继承,JAVA通过接口机制延续C++多个一致性的特点,并省去了多继承在实现和维护上的复杂性。
2、Java的垃圾回收采用垃圾回收器(Garbage Collection)。C++是需要程序员自己写析构函数来释放内存的,复杂且容易忘记而导致内存泄露。Java语言对内存的分配管理是通过JVM 内部机制决定的。垃圾回收意味着在Java 中出现内存漏洞的情况会少得多,使许多编程问题消弥于无形之中。
(PS:GC管理的是堆内存,栈内存和C++一样,超过变量作用于,系统自动释放)
3、Java使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。GC只知道释放那些由new分配的内存,所以不知道如何释放对象的“特殊”内存。为解决这个问题,Java提供了一个名为finalize()的方法,它的工作原理应该是这样的:一旦GC准备好释放对象占用的存储空间,它首先调用finalize(),而且只有在下一次垃圾收集过程中,才会真正回收对象的内存。所以如果使用finalize(),就可以在垃圾收集期间进行一些重要的清除或清扫工作(如关闭流等操作)。
4、toString方法。C++中的“+”操作符自动调用了toString方法,它是C++里面一个自动使用的方法。而Java则必须显式调用。
5、异常机制和“finally"。Java的异常处理机制能够防止异常对系统更严重的破坏,在这方面,优于C++的异常处理机制。
6、线程技术。
7、Java无法操作符重载,这点让我很失望。
8、模板类(Templates)是C++最精彩的一部分,而Java没有。我认为Java后续发布的版本应该考虑这个问题。
9、带标志的break和continue,相当于C++里面的goto语句,但是Java里面没有goto保留字。
- Java和C++的九点区别
- JAVA 和 C/C++ 中 string 的区别和注意点
- java和c的区别
- Java和C的区别
- C和JAVA的区别
- C和JAVA的区别
- c和Java的区别
- C/C++ 点和箭头操作符的区别
- (转载)C/C++ 点和箭头操作符的区别
- C和Java字符串和字符串数组的异同点
- java中抽象类和接口的几点区别
- java代码单元和代码点的区别
- java中抽象类和接口的三点区别
- java代码单元和代码点的区别
- java 接口和抽象类的几点区别
- C和C++几点区别
- C、C++、C#、Java的区别和联系
- java和c/c++的区别
- NPIV--虚拟机存储的新特性
- Flex开源项目
- 算法之冒泡排序
- Magento162 developer toolbar 显示问题和不用插件显示前台路径!!!
- HBase Write Path
- Java和C++的九点区别
- 命令行查看linux 版本号
- 冒泡排序算法的优化
- 为什么 C,C++ 与 Java,C# 的 一个隐晦的表面 区别
- 嵌入式学习笔记
- 数据库中临时表、表变量和CTE使用优劣对比
- 71道经典Android面试题和答案--重要知识点都涉及到了
- 祁文之恋——离开你的第一天
- 算法之合并排序