- Java和C++的区别?
a. Java没有指针。c++可以通过指针直接操作内存,但这个动作是危险的,指针引起的操作曾失误可能导致系统崩溃。因此Java更安全。
b. Java不支持多重继承,但允许一个类实现多个接口。
c. Java是完全面向对象的语言,除了基本数据类型之外,其余类型的数据都是对象型数据
d. Java自动进行内存垃圾回收
e. Java不支持操作符重载 - String,StringBuffer和StringBuilder,区别?
String是基础类,而且被申明为final class,除了hash这个属性外,其他属性都申明为final,因此字符串拼接的时候会产生很多无用的中间对象,频繁使用字符串拼接会对性能有所影响。
StringBuffer是为了解决String字符串拼接产生无用的中间对象的问题,使用append或add方法可以将字符串添加到末尾或者指定位置。所有修改数据的方法都加上了synchronized,因此是线程安全的,但会有一定的代价。
StringBuilder,很对情况下字符串拼接操作不需要是线程安全的,StringBuilder取消了synchronized,提升效率。
Java基础
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 整理了一些相关面试题,留作查阅之用。 1、面向对象特征:继承 封装 多态 2、方法重载:方法名要一样,但是参数类型...