摘录


从简化代码的角度出发,第 3 行和第 7 行的 new Runnable() 可以被删除,因为接口类型 Runnable 可以从类 Thread 的构造方法中推断出来。第 4 和第 6 行同样可以被删除,因为方法 run 是接口 Runnable 中的唯一方法。把第 5 行代码作为 run 方法的实现不会出现歧义。把第 3,4,6 和 7 行的代码删除掉之后,就得到了使用 Lambda 表达式的实现方式,如清单 2 所示。只用一行代码就完成了清单 1 中 5 行代码完成的工作。这是令人兴奋的变化。更少的代码意味着更高的开发效率和更低的维护成本。这也是 Lambda 表达式深受欢迎的原因。

清单 2. 使用 Lambda 表 达式启动线程 1 2 3 4 5 public class LambdaThread {   public static void main(String[] args) {     new Thread(() -> System.out.println("Hello World!")).start();   } } 简单来说,Lambda 表达式是创建匿名内部类的语法糖(syntax sugar)。在编译器的帮助下,可以让开发人员用更少的代码来完成工作。

点评

NULL

原文

点击这里查看原文

其它

本帖内容由21QA云收藏工具自动生成,欢迎使用。

系统消息 若觉得内容不错,请点击左上角的"赞"图标,以优化网站的内容呈现。 另外,请及时验证注册邮箱,否则收不到21QA发出的红包。 官方Q群:250203055

asked 10 May, 16:53

%E8%B7%AF%E4%BA%BA%E7%94%B2's gravatar image

路人甲
131561594671

Be the first one to answer this question!
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link: [text](http://url.com/ "title")
  • image: ![alt](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×848
×69

question asked: 10 May, 16:53

question was seen: 80 times

last updated: 10 May, 16:53

powered by O*S*Q*A

粤ICP备14040061号-1