![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试题
文章平均质量分 92
charles·wang
欣逢盛世 当不负盛世 -- 钟南山
展开
-
java类中代码块、静态代码块、构造方法的执行顺序,jvm字节码执行底层解析,你真的知道吗??
在java基础面试题中经常碰到的就是代码块、静态方法,构造方法的执行顺序的问题?我们可以通过自己书写案例观察到实际的执行顺序,但是很快就忘了。于是,想找一下官方的比较正式的文档说明他们的执行顺序。天不遂人愿,没有找到;求人不如求己,自己观察字节码看下JVM是怎么执行的:一. 测试案例代码// 子类public class TestOne extends Test{ static { System.out.println("子类静态代码块!"); } {原创 2020-08-23 14:49:40 · 1407 阅读 · 1 评论 -
面试题--采用Java多线程技术 设计实现一个符合生产者和消费者问题的程序 (wait/notify/notifyAll)实现一个装弹射击程序
题目: 采用Java多线程技术(例如wait和notify),设计实现一个符合生产者和消费者问题的程序,对一个对象(枪膛)进行操作,其最大容量是20颗子弹。 生产者线程是一个压入线程,他不断向枪膛中压入子弹;消费者线程是一个射出线程,它不断从枪膛中射出子弹。一. 初步实现 请先自己做一遍在看我的思路。 分析: 两个线程,一个装弹,一个开火。那就开启两个线程。两个线程各干自己的活,自己干了活还要通知对方(我干了些,你也别歇着了!)。 然后再思考,他们是始终不会结束的,那么他们要在一个原创 2020-06-10 00:09:05 · 601 阅读 · 0 评论