Java综合面试题及参考答案.docxVIP

  • 1
  • 0
  • 约7.21千字
  • 约 13页
  • 2026-11-16 发布于河北
  • 举报

Java综合面试题及参考答案

适用:Java后端开发岗位,覆盖基础、集合、多线程、JVM、Spring、MySQL、Redis、项目实战等模块

一、Java基础

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

答案:

==是比较运算符。如果比较基本数据类型,直接比较值是否相等;如果比较引用类型,比较的是对象在堆内存中的地址,判断是不是同一个对象。

equals()是Object类中定义的方法,默认实现就是直接用==比较地址。很多类会重写这个方法,比如String、Integer,重写之后不再比较地址,而是比较对象内部的内容是否相同。

开发中常见坑:

Strings1=newString(test);

Strings2=newString(test);

System.out.println(s1==s2);//false,地址不一样

System.out.println(s1.equals(s2));//true,内容一致

需要注意:调用equals的时候,尽量把常量放在前面,避免空指针。例如test.equals(str),而不是str.equals(test)。

2.final、finally、finalize的区别

答案:

final:修饰符。修饰类代表类不能被继承;修饰方法代表方法不能被子类重写;修饰变量代表变量一旦赋值,

文档评论(0)

1亿VIP精品文档

相关文档