JavaEE 高频面试题及详细答案(实战版).docxVIP

  • 1
  • 0
  • 约6.38千字
  • 约 8页
  • 2026-09-20 发布于河北
  • 举报

JavaEE 高频面试题及详细答案(实战版).docx

JavaEE高频面试题及详细答案(实战版)

一、Java基础核心面试题

1.说说==和equals()的区别

这是面试高频基础题,核心区别分为引用类型和基本数据类型两种场景:

基本数据类型:只能用==,比较的是变量的实际数值是否相等。

引用数据类型:==比较的是两个对象的内存地址,判断是不是同一个对象;equals()是Object类的方法,默认和==逻辑一致,但像String、Integer这类常用类都重写了该方法,重写后只比较对象内容,不比较地址。

实战举例:Stringa=123;Stringb=newString(123);a==b结果为false,地址不同;a.equals(b)结果为true,内容一致。

2.String、StringBuilder、StringBuffer的区别

1.可变性:String是不可变字符串,每次拼接、修改都会生成新字符串对象;StringBuilder和StringBuffer是可变字符串,修改操作不会新建对象。

2.线程安全:StringBuffer所有方法都加了synchronized锁,线程安全,多线程环境可用;StringBuilder无锁,线程不安全,仅限单线程使用。

3.性能:单线程下StringBuilder性能最优,StringBuffer

文档评论(0)

1亿VIP精品文档

相关文档