亚信科技面试真题及详细答案(后端通用).docxVIP

  • 0
  • 0
  • 约4.53千字
  • 约 6页
  • 2026-08-27 发布于河北
  • 举报

亚信科技面试真题及详细答案(后端通用).docx

亚信科技面试真题及详细答案(后端通用)

一、Java基础核心面试题(高频必考)

1.==和equals的区别?

参考答案:

==是运算符,equals是方法,两者的对比逻辑完全不同。

基本数据类型用==,比较的是变量的实际数值;引用数据类型用==,比较的是对象的内存地址,也就是判断是不是同一个对象。

equals是Object类的原生方法,默认逻辑和==一致,也是比较地址。但像String、Integer这类常用类,都重写了equals方法,重写后不再比较地址,而是直接对比对象的内容值是否一致。

日常开发中,判断字符串、对象内容是否相同,统一用equals;判断对象是否为同一实例,用==。同时使用equals时,我会习惯性把常量放前面,避免空指针异常。

2.谈谈Java多态的理解,以及实际应用场景?

参考答案:

多态是面向对象三大特性之一,核心就是父类引用指向子类对象,编译看父类,运行看子类。

实现多态的前提有三个:继承关系、方法重写、父类引用接收子类实例。

就像题目里的场景,Person是父类,Father是子类,Father重写了eat方法,执行Personp=newFather()时,最终调用的是子类Father的eat方法。如果子类没有重写,才会执行父类方法。

实际开发中,多态主要用来解耦。比

文档评论(0)

1亿VIP精品文档

相关文档