三面百度,这些问题你会吗?分享面试经历总结(已拿offer)

一面

 

  1. 上来照例还是问了问项目。
    答:我介绍了自己的项目背景,项目的整个流程,由于是一个多人合作的项目,还介绍了自己负责项目的哪个模块,以及这个模块如何实现的,我感觉我个人说话语速比较快,建议大家尽量语速慢一些,可以多说个几分钟~
  2. 项目亮点可以作为你面试的项目亮点的文章,不来看看吗?
    https://mp.weixin.qq.com/s/oXVi8WgCt3BYuwpSuAMk_Q
  3. 然后他就说那就来问一下基础的java问题吧,问了java的8种基本数据类型
    答:byte short int long float double boolean char
  4. 字符集和编码的区别?
    答:字符集是多个字符的集合,比如说ASC码就说字符集;编码的话就是计算机底层是01这样存储每个字符,编码就是按照一定的规则(比如说多长一串二进制)去读取二进制数的规则;
  5. 说的数据类型,然后问了我short s1 = 1; s1 = s1+1;对不对?
    答:我说不对,s1+1发生强制类型转换变成了int类型,应该是这样s1=short(s1+1);我顺带说了s1++就行,编译器自动进行特殊处理
  6. Final修饰词作用?
    答:final修饰变量如果修饰的是基本数据类型,那么这个值一经赋值那么无法改变,如果修饰的是引用数据类型,那么引用不可以改变,但是引用中的对象内容是可以变化的;final修饰的方法不可以被子类修改,修饰的类不可被继承;
  7. 接着问了final修饰有啥好处?
    答:final的关键字提高了性能,JVM和java应用会缓存final变量;final变量可以在多线程环境下保持线程安全;使用final关键字,JVM会对方法变量类进行优化;
  8. 还问了String中重写equals不重写hashcode会出现什么问题?答:这个我说了集合类中中hashset,存储着某一个对象,如果重写了对象的equals方法,但是没有重写hashcode方法,那么hashset中可能存储两个hashcode值相同也就是两个相同的对象,这样会破坏了hashset存储对象的唯一性。
  9. 由于我上面提到了集合,然后问我让我讲一讲hashmap。
    答:hashmap我讲了hashmap的数据结构数组链表结构,讲了hashmap的put,get,扩容的底层原理,讲了hashmap不是线程安全的,以及它为什么不是线程安全,举了在多线程下插入,扩容带来的非线程安全的例子;同时讲了hashmap在1.7与1.8中的区别,put中引入了红黑树,以及扩容的时候不同,这些就讲了挺长时间;
  10. 由于我上面提到了hashmap非线程安全,就问了我ConCurrentHashmap
    答:
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值