J2EE后端开发高频面试题(附真实口语化详细答案).docxVIP

  • 0
  • 0
  • 约5.62千字
  • 约 10页
  • 2026-07-27 发布于河北
  • 举报

J2EE后端开发高频面试题(附真实口语化详细答案).docx

J2EE后端开发高频面试题(附真实口语化详细答案)

一、Java基础核心(必问)

1.==和equals的区别

答案:

==是比较运算符,基本数据类型比较的是数值,引用类型比较的是内存地址。

equals是Object的方法,默认也是比较地址,但是像String、Integer这些类重写了它,用来比较内容是否相等。

日常开发里,字符串对比一律用equals,避免空指针的话,一般写常量在前,比如test.equals(str)。

2.String、StringBuilder、StringBuffer的区别

答案:

String是不可变字符串,每次拼接都会生成新对象,频繁拼接性能差。

StringBuilder可变、线程不安全、效率高,单线程拼接优先用它。

StringBuffer可变、加了synchronized锁、线程安全、效率低,多线程场景才用。

实际开发:绝大多数场景直接用StringBuilder。

3.重写和重载的区别

答案:

重载(Overload):同一个类里,方法名相同,参数个数、类型、顺序不同,和返回值无关,属于编译时多态。

重写(Override):父子类之间,方法名、参数、返回值完全一致,子类覆盖父类方法,访问权限不能比父类严格,属于运行时多态。

4.接口和抽象类的区别

答案:

1、抽象类有构造方法,接口没有构造方

文档评论(0)

1亿VIP精品文档

相关文档