校招 未知部门 / 后端-Java / 二面

[面试日期] 2024-07-22 [面试时长] 未知
[学校背景] 北京理工大学 | 985 [学历背景] 未知
[发布人] 面试之星官方收录
<h2>科大讯飞Java 2面经</h2> <h1></h1><h1></h1><h1></h1><p>#软件开发笔面经#</p><p>6.5北京时间上午10点2面</p><p>简单自我介绍,项目介绍</p><p>-----------------------------开始问些简单八股(面试题精选)--------------------------</p><p></p><h3><strong>1. 线程池都有哪些状态?</strong></h3><p>线程池有5种状态:Running、ShutDown、Stop、Tidying、Terminated。(还有就绪,阻塞等)</p><p>线程池各个状态切换框架图:</p><p><img src="https://uploadfiles.nowcoder.com/images/20240722/224877430_1721660581257/D2B5CA33BD970F64A6301FA75AE2EB22"></p><h3><strong></strong></h3><h3><strong>2. 线程池中 submit()和 execute()方法有什么区别?</strong></h3><ul><li>接收的参数不一样</li><li>submit有返回值,而execute没有</li><li>submit方便Exception处理</li></ul><p></p><p><strong>3. 在 java 程序中怎么保证多线程的运行安全?</strong></p><p>线程安全在三个方面体现:</p><ul><li>原子性:提供互斥访问,同一时刻只能有一个线程对数据进行操作,(atomic,synchronized);</li><li>可见性:一个线程对主内存的修改可以及时地被其他线程看到,(synchronized,volatile-读写线程);</li><li>有序性:一个线程观察其他线程中的指令执行顺序,由于指令重排序,该观察结果一般杂乱无序,(happens-before原则)。</li></ul><p></p><p>------------------结束面试------华丽的分割线-----------------</p><p></p><p></p><p><img src="https://uploadfiles.nowcoder.com/images/20240717/224877430_1721229460279/D2B5CA33BD970F64A6301FA75AE2EB22"></p><p></p><p></p><p></p><a>#软件开发笔面经#</a>
AI 推荐面试题