2.线程使用
1.lambda表达式的使用
1.lambda的使用:
只能用在函数式接口的地方,如Runable接口
//重点1:有FunctionalInterface的标签
@FunctionalInterface
public interface Runnable {
//重点2:接口中只有一个方法!
public abstract void run();
}
原代码为:
只用匿名内部类方式:
new Thread(new Runnable() {
@Override
public void run() {
System.out.println("业务代码!");
}
});
lambbda方式:省略了匿名内部类名称Runnable和方法名run等
new Thread(()->{
System.out.println("业务代码!");
});
2.Thread和Runnable的关系
Thread和Runnable的实质是继承关系,没有可比性。
无论使用Runnable还是Thread,都会new Thread,然后执行run方法。
用法上,如果有复杂的线程操作需求,那就选择继承Thread,如果只是简单的执行一个任务,那就实现runnable