匿名内部类与lambda表达式
- 匿名内部类, 简言之,是指没有名称的java类,它可以通过继承父类或者实现接口来进行编程。
通常我们这么去操作:
父类/接口 对象名称=new 父类/接口(){
继承父类的方法或者实现接口的方法
}
- lambda表达式,简言之,是JDK1.8的新特性,是从匿名内部类发展而来的。我们可以理解它就是函数式接口的实例。
下面我写了一些代码来进行试验:
实例代码:JDK1.8之前的匿名内部类的写法
//JDK8之前的匿名内部类的写法
static void lambdaJdk8Down(){
Runnable runnableJdk8down=new Runnable() {
@Override
public void run() {
System.out.println("JDK8前 这个方法是JDK8之前的匿名内部类....");
}
};
new Thread(runnableJdk8down).start();
}
实例代码:
JDK8之后的lambda表达式加上匿名内部类的写法(lambda表达式不含参的写法)
static void lambdaJdk8Up(){
Runnable runnableJdk8up=(