Java常见面试题(三)

1、throw 和 throws 的区别?

  • throw:真实抛出一个异常。
  • throws:声明可能会抛出一个异常。

2、spring 常用的注入方式有哪些?

  • setter 属性注入
  • 构造方法注入
  • 注解方式注入

3、JVM有哪些垃圾回收器?

  • Serial
  • Serial Old
  • ParNew
  • Parallel
  • Parallel Old
  • CMS
  • G1

4、堆用来放什么?

对象实例
数组

5、类加载分为几个步骤?

加载、验证、准备、解析、初始化。最后是使用和卸载

6、如何判断一个对象是否存活?

引用计数法(循环引用问题)
引用链法

7、给对象分配堆内存的方式有哪些?

如果堆内存规整,采用"指针碰撞";
如果堆内存不规整,采用"空闲列表"

8、访问对象有哪些方式?

句柄
直接指针

9、并发创建对象时,有什么处理策略?

1)同步处理
2)本地线程分配缓冲区

10、出现线程安全问题的原因有哪些?

  • 线程切换带来的原子性问题
  • 缓存导致的可见性问题
  • 编译优化带来的有序性问题

#Java##学习路径#
全部评论

相关推荐

牛客101244697号:这个衣服和发型不去投偶像练习生?
点赞 评论 收藏
分享
沉淀一会:**圣经 1.同学你面试评价不错,概率很大,请耐心等待;2.你的排名比较靠前,不要担心,耐心等待;3.问题不大,正在审批,不要着急签其他公司,等等我们!4.预计9月中下旬,安心过节;5.下周会有结果,请耐心等待下;6.可能国庆节前后,一有结果我马上通知你;7.预计10月中旬,再坚持一下;8.正在走流程,就这两天了;9.同学,结果我也不知道,你如果查到了也告诉我一声;10.同学你出线不明朗,建议签其他公司保底!11.同学你找了哪些公司,我也在找工作。
点赞 评论 收藏
分享
评论
1
12
分享
牛客网
牛客企业服务