1. JDK和JRE的区别
JDK(Java Development Kit)
- 开发工具
- 基本类库
- javac 编译
- javap 反编译
- javadoc
- 运行环境
- JRE(Java Runtime Environment)
3. Lambda表达式使用的前提条件
-
方法的参数或局部变量类型必须为接口!!!,才能使用Lambda
eg:局部变量类型:(Runnable是一个接口)
匿名内部类方式:
Runnable r = new Runnable(){
@override
public void run(){
System.out.println("xxx");
}
}
这种情况,你要来个局部变量,可以使用 Lambda表达式
Runnable r = ()-> System.out.println("xxx");
- 接口中有且仅有一个抽象方法
JDK8中,只有一个抽象方法的接口称为函数式接口,我们就能使用 Lambda。
针对一个接口中,是否有大于一个抽象方法?JDK8为我们新增了一个注解:@FunctionalInterface。它能够帮助我们检测这个接口是不是只有一个抽象方法,如果有两个抽象方法,则会报错。
4. PECS(Producer Extends Consumer Super)原则
频繁往外读取内容的,适合用上界Extends -> 子类
经常往里插入的,适合用下界Super -> 父类
标签:Runnable,Java,局部变量,基础,接口,抽象,笔记,Lambda From: https://www.cnblogs.com/Bota5ky/p/17231822.html