diff --git a/javaSE-day07/src/com/inmind/lambda01/Demo01.java b/javaSE-day07/src/com/inmind/lambda01/Demo01.java new file mode 100644 index 0000000..3b0dead --- /dev/null +++ b/javaSE-day07/src/com/inmind/lambda01/Demo01.java @@ -0,0 +1,31 @@ +package com.inmind.lambda01; +/* +使用匿名内部类实现多线程 + +匿名内部类的语法: + new 父类|接口(){ + 要重写的方法 + } + +线程的启动方式有2种: + 1.继承Thread + 2.实现Runnable(重点) + + --------------------------------------- + 函数式编程思想:重点关注做什么,而不是怎么做。 + 以下启动线程代码,必须按照面向对象的语法,new Runnable(),才能写run()方法,其实我们最终想做的事情只是要编写出run方法的方法体而已 + + 我们可以这么理解,函数式编程思想:做什么就是要重写接口中方法的方法体,而之前的创建对象,重写的语法都省略掉 + */ +public class Demo01 { + public static void main(String[] args) { + new Thread(new Runnable() { + @Override + public void run() { + System.out.println(Thread.currentThread().getName()+"线程启动了"); + } + }).start(); + //-------------------------------以下使用函数式编程思想优化以上的代码(lambda)---------------------------------- + new Thread(()->{ System.out.println(Thread.currentThread().getName()+"线程启动了");}).start(); + } +}