欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Java面试题汇总(持续更新),面试问题汇总

来源: javaer 分享于  点击 128 次 点评:92

Java面试题汇总(持续更新),面试问题汇总


1. ==和equals的区别

答:

  • 基础数据类型比较:只能使用==,比较值是否相等
  • 引用数据类型比较:
  • 没有重写equals方法:==和equals没有区别,比较的都是引用是否指向了同一块内存
  • 重写了equals方法:equals比较的是引用的对象内容是否相等(在javaBean规定中当重写equals时必须重写hashCode,两个对象的equals相等,hashCode也必须相等,如果不相等就会造成相同的对象在HashSet存储中存储两次)
2. 堆与栈的区别

答:1. 栈内存存储的是局部变量,而堆内存存储的是实体
2. 栈内存的更新速度要快于堆内存,因为局部变量的生命周期很短
3. 栈内存存放的变量生命周期一旦结束就会被释放,而堆内存存放的实体会被垃圾回收机制不定时回收

相关文章

    暂无相关文章
相关栏目:

用户点评