- 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基础
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 整理了一些相关面试题,留作查阅之用。 1、面向对象特征:继承 封装 多态 2、方法重载:方法名要一样,但是参数类型...