Java中的Lambad表达式和其他方式比较
Lambad表达式
- Runnable优-缺。
- Lambda写法与其他写法比较(关键)。
Java8
(注意版本)推出。Runnable代码
正常来说 大家要启动一个线程,是不是要通过
java.lang.Runnable
接口来完成任务,再使用java.lang.Thread
类启动线程。(没错我实验过了!)//匿名内部类写法
public class Demo02{
public static void main(String []args){
//匿名内部类
Runnable tack= new Runnable(){
// 重写run 方法
@Override
public void run(){
System.out.println("多线程启动对象");
}
};
//隐名线程 搭配 start
new Thread(tack).start();
};
}
}
代码分析
Runnable
匿名内部类写法 可以分析几点内容:? 1.Thread 需要Runnable接口作为参数,中的抽象
run
方法是线程任务内容核心。? 2.为了
run
方法体,不得不需要Runnable接口实现类。并且必须覆盖run
方法,所有名称,参数,方法返回值,不得不重写一遍? 3.为了省去一个
RunnableImpl
实现类的麻烦,不得不用匿名内部。【Java中的Lambad表达式和其他方式比较】总结:好像也就方法体才是关键所在。所以我们就要导出Lambda的更优写法。
Lambda更优写法
Lambda更优写法来了
借助Java 8全新语法, 上述
Runnable
接口匿名内部类可以通过更简单的Lambda表达式表达了。标准语法:
(参数类型 参数名称) -> { 代码语句 }
x () -> System.out.println("多线程任务执行!")
Lambda使用方法
//Lambda 表达式使用方法
new Thread(() -> System.out.println("Lambda表达式")).start();
推荐阅读
- 热闹中的孤独
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- JS中的各种宽高度定义及其应用
- 我眼中的佛系经纪人
- 《魔法科高中的劣等生》第26卷(Invasion篇)发售
- Android中的AES加密-下
- 事件代理
- 放下心中的偶像包袱吧
- C语言字符函数中的isalnum()和iscntrl()你都知道吗
- Java|Java OpenCV图像处理之SIFT角点检测详解