Java基础

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

相关阅读更多精彩内容

  • 面向对象的三个特征 封装,继承,多态.这个应该是人人皆知.有时候也会加上抽象. 多态的好处 允许不同类对象对同一消...
    Blizzard_liu阅读 5,644评论 0 6
  • 1. ArrayList、LinkedList、Vector的区别 答: 相同点: ArraList、Linked...
    wayneinyz阅读 1,670评论 0 0
  • 整理了一些相关面试题,留作查阅之用。 1、面向对象特征:继承 封装 多态 2、方法重载:方法名要一样,但是参数类型...
    dreamkong阅读 6,256评论 0 10
  • 九种基本数据类型的大小,以及他们的封装类。(1)九种基本数据类型和封装类 (2)自动装箱和自动拆箱 什么是自动装箱...
    关玮琳linSir阅读 6,012评论 0 47
  • 丘吉尔说:“当真相在穿鞋的时候,谎言已经跑遍了全城。” 小时候喜欢什么,或者想要什么,就会毫不犹豫的说出来,最小的...
    半榛半柠阅读 4,114评论 7 22

友情链接更多精彩内容