Java深度面试笔试题(含详细落地答案).docxVIP

  • 1
  • 0
  • 约4.74千字
  • 约 8页
  • 2026-07-27 发布于河北
  • 举报

Java深度面试笔试题(含详细落地答案).docx

Java深度面试笔试题(含详细落地答案)

一、Java基础深度题(含坑点)

1.简述==和equals的核心区别,并举出String类典型踩坑案例

答案:

1)==是运算符,比较的是内存地址(引用地址);如果是基本数据类型,直接比较数值。

2)equals是Object类方法,默认和==逻辑一致,很多类(String、Integer、集合)重写后,比较的是内容值。

生产高频坑点案例:

java

Strings1=abc;

Strings2=newString(abc);

System.out.println(s1==s2);//false

System.out.println(s1.equals(s2));//true

原因:s1指向字符串常量池地址,s2是堆中新对象,地址不同,但内容相同。

延伸经典坑:Integer缓存问题

Integer缓存范围-128~127,范围内对象复用,超出新建对象:

java

Integera=100;

Integerb=100;

System.out.println(a==b);//true

Integerc=130;

Integerd=130;

System.out.println(c==d);//false

2.final、f

文档评论(0)

1亿VIP精品文档

相关文档