A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 高坂火龙果 于 2019-3-27 21:10 编辑

黄志斌:
1.等待唤醒机制存在的意义是什么?
多个线程并发执行时,在默认情况下CPU是随机切换线程的,有时我们需要几个线程协作完成任务,需要他们有规律的执行,这时就需要等待唤醒机制。

2.调用wait()方法和notify()方法,需要注意什么?
(1)wait方法与notify方法必须要由同一个锁对象调用。因为:对应的锁对象可以通过notify唤醒使用同一个锁对
象调用的wait方法后的线程;
(2)wait方法与notify方法是属于Object类的方法的。因为:锁对象可以是任意对象,而任意对象的所属类都是继
承了Object类的;
(3)wait方法与notify方法必须要在同步代码块或者是同步函数中使用。因为:必须要通过锁对象调用这2个方
法。

3.使用线程池来操作线程有什么好处?
其中的线程可以反复使用,不需要去频繁创建线程对象,节省资源。

4.传统的面向对象编码有什么弊端?
不得不创建接口对象,抽象方法需要覆盖重写,不得不编写实现类,代码过程繁琐冗余。

5.什么情况下可以使用lambda表达式来替换面向对象编码?
(1)使用Lambda必须具有接口,且接口中有且只有一种抽象方法;
(2)方法的参数或局部变量类型必须为Lambda对应的接口类型,才能使用Lambda作为该接口的实例。

6.什么情况下lambda表达式可以简写?
(1)小括号内参数的类型可以省略;
(2)如果小括号内有且只有一个参数,则小括号可以省略;
(3)如果大括号内有且只有一个语句,则无论是否有返回值,都可以省略大括号、return关键字和语句分号。

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马