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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1.等待唤醒机制存在的意义是什么?
解决线程通讯中的资源浪费问题,保证共享变量的合理利用
2.调用wait()方法和notify()方法,需要注意什么?
注意使用同步锁调用;要写在方法内
3.使用线程池来操作线程有什么好处?
节省创建,销毁线程对象的资源;
提高响应速度;
提高线程的可管理性;
4.传统的面向对象编码有什么弊端?
书面格式复杂;
需要创建对象,调用对象的方法,才可以得到结果;
5.什么情况下可以使用lambda表达式来替换面向对象编码?
由且只有一个抽象方法的解控;还需要有上下文的推导
6.什么情况下lambda表达式可以简写?
1)无参无返回值:可以省略{};
2)有参有返回值:参数列表只有一个参数类型时,()可以不写
                参数类型可以省略
                当方法体只有一行时,可以省略 return ;{}
                省略 return ;{} 时,必须一起省略
回复 使用道具 举报
1。用来解决线程通信问题.
2.要注意调用的对象地址值必须一样
3.1.线程池里面的线程可以重复使用,减少了频繁创建,销毁线程所浪费的资源.2.提高响应速度,3.提升系统的承载能力
4.过于繁琐 代码冗余
5.1.可以上下推导 2.继承接口且接口仅有一个抽象方法.
6.1、()内的参数类型可以省略;
   2、如果()内仅有一个参数,那么()可以省略;
   3、如果{}内仅有一个语句,那么{}、;、return可以省略(需一起省略);
回复 使用道具 举报
1。用来解决线程通信问题.
2.要注意调用的对象地址值必须一样
3.1.线程池里面的线程可以重复使用,减少了频繁创建,销毁线程所浪费的资源.2.提高响应速度,3.提升系统的承载能力
4.过于繁琐 代码冗余
5.1.可以上下推导 2.继承接口且接口仅有一个抽象方法.
6.1、()内的参数类型可以省略;
   2、如果()内仅有一个参数,那么()可以省略;
   3、如果{}内仅有一个语句,那么{}、;、return可以省略(需一起省略);

孙享
回复 使用道具 举报
1.        等待唤醒机制存在的意义是什么?
处理线程间通信问题,有效利用资源
2.调用wait()方法和notify()方法,需要注意什么?
wait方法与notify方法必须要由同一个锁对象调用
wait方法与notify方法必须要在同步代码块或者是同步函数中使用
3.使用线程池来操作线程有什么好处?
不用重复创建,降低资源消耗,提高运行速度,提高线程的可管理性
4.传统的面向对象编码有什么弊端?
代码冗余,
5.什么情况下可以使用lambda表达式来替换面向对象编码?
使用Lambda必须具有接口,且要求接口中有且仅有一个抽象方法,具有上下文推断。
6.什么情况下lambda表达式可以简写?
1、(参数列表):括号中参数列表的数据类型,可以省略不写
2、(参数列表):括号中的参数如果只有一个,那么数据类型和( )都可以省略不写
3、如果大括号内有且仅有一个语句,则无论是否有返回值,都可以省略大括号、return关键字及语句分号。
回复 使用道具 举报
1。用来解决线程通信问题.
2.要注意调用的对象地址值必须一样
3.1.线程池里面的线程可以重复使用,减少了频繁创建,销毁线程所浪费的资源.2.提高响应速度,3.提升系统的承载能力
4.过于繁琐 代码冗余
5.1.可以上下推导 2.继承接口且接口仅有一个抽象方法.
6.1、()内的参数类型可以省略;
   2、如果()内仅有一个参数,那么()可以省略;
   3、如果{}内仅有一个语句,那么{}、;、return可以省略(需一起省略);
回复 使用道具 举报
1.等待唤醒机制存在的意义是什么?
多线程操作同一个资源的时候,执行顺序可以按照自定义有序进行
2.调用wait()方法和notify()方法,需要注意什么?
需要同一个锁对象,并且处于同步状态
3.使用线程池来操作线程有什么好处?
1,避免资源浪费。不用频繁的创建销毁线程2提高运行效率3方便线程管理
4.传统的面向对象编码有什么弊端?
冗余度高
5.什么情况下可以使用lambda表达式来替换面向对象编码?
1在接口并且只有一个抽象方法的时候,2必须有上下文推断
6.什么情况下lambda表达式可以简写?
参数类型可以省略,只有一条代码{};可以省略,有返回值的时候{};和return一起省略
回复 使用道具 举报
1。用来解决线程通信问题.
2.要注意调用的对象地址值必须一样
3.1.线程池里面的线程可以重复使用,减少了频繁创建,销毁线程所浪费的资源.2.提高响应速度,3.提升系统的承载能力
4.过于繁琐 代码冗余
5.1.可以上下推导 2.继承接口且接口仅有一个抽象方法.
6.1、()内的参数类型可以省略;
   2、如果()内仅有一个参数,那么()可以省略;
   3、如果{}内仅有一个语句,那么{}、;、return可以省略(需一起省略);
回复 使用道具 举报
spik 中级黑马 2018-8-20 21:35:07
28#
1.等待唤醒机制存在的意义是什么?
使多线程能有效的利用资源,

2.调用wait()方法和notify()方法,需要注意什么?
1、wait()和notify()必须使用同一个锁对象调用。
2、wait方法与notify方法是属于object类的方法。
3、wait方法与notify方法必须在同步代码块或者同步函数中使用(因为必须通过锁对象调用这连个方法)

3.使用线程池来操作线程有什么好处?
线程池中的线程可以重复使用,免去频繁创建线程对象,降低了资源的消耗。
免去等待创建线程时间,当任务来了可以马上就响应。
线程的可管理性,根据实际情况创建合适的线程池和线程对象。


4.传统的面向对象编码有什么弊端?
操作冗余现象,代码冗余现象。

5.什么情况下可以使用lambda表达式来替换面向对象编码?
1、必须有接口,并且接口中有且仅有一个抽象方法
2、必须具有上下文推断。
6.什么情况下lambda表达式可以简写?
1、小括号内的参数类型可以省略
2、如果小括号内有且只有一个参数,则小括号可以省略;
3、如果大括号内有却只有一个语句,则无论是否有返回值,都可以省略大括号、return关键字及语句分号
lijionghua
回复 使用道具 举报
1.等待唤醒机制存在的意义是什么?

  多线程之间信息的交流,资源共享。
2.调用wait()方法和notify()方法,需要注意什么?

  两种方法均为锁对象调用,调用wait()方法后需要另外的线程使用锁对象调用
notify()方法唤醒。


3.使用线程池来操作线程有什么好处?
   提高资源的利用率。节省了每次创建线程和销毁线程的过程。
   程序的相应速度提高。
   使线程的管理系统化。
4.传统的面向对象编码有什么弊端?

   代码冗余
5.什么情况下可以使用lambda表达式来替换面向对象编码?

  有接口,该接口有且仅有一个抽象方法
6.什么情况下lambda表达式可以简写?

  无参数无返回值,当只有一个语句时大括号可以省略
  有参数有返回值,参数的数据类型可以省略,只有一个语句时,return关键字,大括号,分号可以一起省略。
回复 使用道具 举报
1.等待唤醒机制存在的意义是什么?  答:为了解决线程通信中出现的资源浪费问题
2.调用wait()方法和notify()方法,需要注意什么?
  答:wait()方法和notify()需要在同步代码块中被调用,而且必须是同一个锁对象。
        调用wai()后线程进入无限等待状态,并且会将锁对象释放;
        调用notify()方法会唤醒等待时间最长的线程
3.使用线程池来操作线程有什么好处?
  答:(1)降低资源消耗
         (2)提高响应速速
         (3)提高线程可管理性
4.传统的面向对象编码有什么弊端?
  答:传统面向对象现思想过于关注用什么去实现目标任务,但是有些时候我们只关心结果,而受限与语法格式而不得不去实现一些接口,类或者抽象方法,导致任务实现起来费时费力。
5.什么情况下可以使用lambda表达式来替换面向对象编码?
  答 :(1)必须有接口,而且接口中只有一个抽象方法。
          (2)必须能够根据上下文推断
6.什么情况下lambda表达式可以简写?
   答:(1)参数列表的类型可以省略
          (2)参数只有一个的时候可省略括号
          (3)当方法体只有一个语句时可以省略 return、{}、以及分号,如果省略三个必须一起省略

点评

陈建秋  发表于 2018-8-21 20:12
回复 使用道具 举报
C:\Users\msi\Desktop
回复 使用道具 举报
今天我们学习了JDK1.8的新特性,lambda表达式,等待唤醒机制和线程池,请根据自己的理解回答下面问题:
1.等待唤醒机制存在的意义是什么?

解决线程通讯问题,避免资源浪费问题。


2.调用wait()方法和notify()方法,需要注意什么?

1.同步使用的锁对象必须保证唯一;


2.只有锁对象才能调用wait和notify方法。


3.使用线程池来操作线程有什么好处?

1.降低资源消耗。减少了创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。


2. 提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。


3. 提高线程的可管理性。可以根据系统的承受能力,调整线程池中工作线线程的数目,防止因为消耗过多的内存。


4.传统的面向对象编码有什么弊端?

面向对象过分强调“必须通过对象的形式来做事情”,导致部分代码冗余。


5.什么情况下可以使用lambda表达式来替换面向对象编码?

使用Lambda必须具有接口,且要求接口中有且仅有一个抽象方法;

使用Lambda必须具有上下文推断。也就是方法的参数或局部变量类型必须为Lambda对应的接口类型,才能使用Lambda作为该接口的实例。


6.什么情况下lambda表达式可以简写?
       1.参数列表内的类型可以简写;
       2.当小括号内的参数只有一个时,小括号可以省略;
       3.当大括号内有且仅有一个语句时,不管其有没有返回值,大括号,return关键字和语句分号可以一起省略。


回复 使用道具 举报
1.等待唤醒机制存在的意义是什么?
可以让多个线程互相协作
2.调用wait()方法和notify()方法,需要注意什么?
必须是同一个锁对象,必须在同步代码块或者同步函数中使用
3.使用线程池来操作线程有什么好处?
降低资源消耗,提高响应速度,提高线程的可管理性,可以根据系统的承受能力,调整线程数量
4.传统的面向对象编码有什么弊端?
传统面向对象在创建对象传递参数时会产生许多冗余代码。
5.什么情况下可以使用lambda表达式来替换面向对象编码?
必须具有接口,且接口中有且仅有一个抽象方法
6.什么情况下lambda表达式可以简写?
小括号内参数的类型可以省略,;如果小括号,有且仅有一个参数,那小括号可以省略;如果大括号里面只有一条语句,那大括号return分号都可以省略
回复 使用道具 举报
1.等待唤醒机制存在的意义是什么?提高运行效率,解决资源利用问题,避免资源浪费;
2.调用wait()方法和notify()方法,需要注意什么?

wait():永久等待,需要其它线程调用notify方法唤醒;
notify:需要用在wait()方法前,否则执行不到,唤醒其它线程
通过锁对象来调用
3.使用线程池来操作线程有什么好处?

1、提高线程的复用性;避免重复的创建消耗线程,占用资源,可以执行多个任务;
2、提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。
3、提高线程的可管理性。

4.传统的面向对象编码有什么弊端?
冗长
5.什么情况下可以使用lambda表达式来替换面向对象编码?

接口,且里面有且仅有一个抽象方法
上下文可推导
6.什么情况下lambda表达式可以简写?

1、(参数列表):括号中的数据类型可以省略
2、(参数列表):括号中只有一个数据时,括号也可以省略
3、{方法代码},如果方法代码只有句,那么 大括号 ,return 和 分号可以一起省略(必须);

周家乾
回复 使用道具 举报
MJ11 中级黑马 2018-8-20 21:41:06
35#
1.等待唤醒机制存在的意义是什么?
          意义:等待唤醒机制是多个线程之间的一种协作机制,是用来解决线程通信问题。是解决线程通信过程中产生的资源浪费问题
2.调用wait()方法和notify()方法,需要注意什么?
    必须是同一个锁对象,必须写在同步代码块中
3.使用线程池来操作线程有什么好处?
           好处:1.降低资源消耗。减少了创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。
                     2. 提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。
                     3.  提高线程的可管理性。可以根据系统的承受能力,调整线程池中工作线线程的数目,防止因为消耗过多的内存,而把服务器累趴下(每个线程需要大约1MB内存,线程开的越多,消耗的内存也就越大,最后死机)。
4.传统的面向对象编码有什么弊端?
       代码不够简洁,存在代码冗余的弊端,反复创建对象,造成资源浪费
5.什么情况下可以使用lambda表达式来替换面向对象编码?
          使用Lambda表达式必须具有接口且接口中只有一个抽象方法,使用Lambda必须具有上下文推导。也就是方法的参数或局部变量类型必须为Lambda对应的接口类型,才能使用Lambda作为该接口的实例。
6.什么情况下lambda表达式可以简写?
         分无参无返回值与有参无返回值两种情况
         1. 小括号内参数的类型可以省略;
         2. 如果小括号内有且仅有一个参,则小括号可以省略;
         3. 如果大括号内有且仅有一个语句,则无论是否有返回值,都可以省略大括号、return关键字及语句分号。

         田 浪
回复 使用道具 举报
1.等待唤醒机制存在的意义是什么?
答:保证线程间通信有效利用资源。

2.调用wait()方法和notify()方法,需要注意什么?
答:wait()方法和notify()方法必须要由同一个对象锁调用,因为对应的锁对象可以通过notify唤醒使同一个锁对象调用的wait方法后的线程。
其次是必须在同步代码块或者是同步函数中使用,因为必须要通过锁对象调用这两个方法。               

3.使用线程池来操作线程有什么好处?
答:线程池中的线程可以反复使用,省去频繁创建线程对象的操作,节约资源。
其次可以提高响应速度。最后可以提高线程的可管理性。

4.传统的面向对象编码有什么弊端?
答:代码冗余。

5.什么情况下可以使用lambda表达式来替换面向对象编码?
答:1、接口有且仅有一个抽象方法;
   2、上下文可推导;

6.什么情况下lambda表达式可以简写?
答:参数类型可以简写,
    大括号内的内容如果只有一个语句,那么大括号,封号,返回语句都可以省略。

(黄嘉欣)
回复 使用道具 举报
今天我们学习了JDK1.8的新特性,lambda表达式,等待唤醒机制和线程池,请根据自己的理解回答下面问题:
1.等待唤醒机制存在的意义是什么?
可以让线程按照我们的意愿按顺序操作。
2.调用wait()方法和notify()方法,需要注意什么?
同一个锁
3.使用线程池来操作线程有什么好处?
就是节能减排。绿色环保不浪费资源
4.传统的面向对象编码有什么弊端?
代码太多相对于Lambda来说太过于不美观,冗余
5.什么情况下可以使用lambda表达式来替换面向对象编码?
就是一个接口仅且只有一个抽象方法
6.什么情况下lambda表达式可以简写?
参数的数据类型可以简写。
大跨号内如果只有一句语句可以省略大跨号。分号。以及return
回复 使用道具 举报
1.等待唤醒机制存在的意义是什么?
是线程间的一种协作机制。
2.调用wait()方法和notify()方法,需要注意什么?
必须要由同一个锁对象调用;必须再同步代码块或者同步函数中使用;是属于Object类的方法。
3.使用线程池来操作线程有什么好处?
降低资源消耗;提高响应速度;提高线程的可管理性。
4.传统的面向对象编码有什么弊端?
传统的面向对象编码比较冗余,首先创建一个 Runnable 接口的匿名内部类对象来指定任务内 容,再将其交给一个线程来启动,而只有方法体才是关键所在 。
5.什么情况下可以使用lambda表达式来替换面向对象编码?
必须要有接口且接口当中只有一个抽象方法。
6.什么情况下lambda表达式可以简写?
凡是根据上下文推导出来的内容,都可以省略缩书写。
回复 使用道具 举报
-------------吴齐宾-----------------
1.等待唤醒机制存在的意义是什么?
意义是对资源的更加有效的利用.不会造成资源浪费
2.调用wait()方法和notify()方法,需要注意什么?
1).他们需要调用同一个锁对象.
2)必须要在同步代码块中使用,
3.使用线程池来操作线程有什么好处?
1)避免了重复创建和销毁线程,提高资源的利用率
2)提高程序的响应速度
4.传统的面向对象编码有什么弊端?
代码比较冗余,常常为了调用一个方法而不得不去创建很多个对像或者实现类去调用
5.什么情况下可以使用lambda表达式来替换面向对象编码?
1.接口
2)接口中有且仅有一个抽象类方法.
3)上下文可以推理
6.什么情况下lambda表达式可以简写?
1)小括号参数类型可以省略
2)如果小括号内有且仅有一个参,则小括号可以省略;
3)如果大括号内有且仅有一个语句,则无论是否有返回值,都可以省略大括号、return关键字及语句分号
回复 使用道具 举报
1.等待唤醒机制存在的意义是什么?

提高运行效率,避免资源浪费

2.调用wait()方法和notify()方法,需要注意什么?

要确保锁对象是同一个才能相互进行调用

3.使用线程池来操作线程有什么好处?

可以减少线程创建,消除时的资源浪费,提高效率

4.传统的面向对象编码有什么弊端?

代码冗长

5.什么情况下可以使用lambda表达式来替换面向对象编码?

对象是接口,并且有且只有一个抽象对象时

6.什么情况下lambda表达式可以简写?

当对象的重写内容只有一句代码时
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马