public class demo1 {
//内部实现类3
static class IIlike2 implements Like{
@Override
public void lamda() {
System.out.println("Lambda3");
}
}
public static void main(String[] args) {
/* 使用Ladmda前提:接口只有一个抽象方法,也就是一个函数式接口
*
* */
IIlike iIlike = new IIlike();//类名 对象名= new 类名
Like iIlike2 = new IIlike();//接口 对象名= new 类名
iIlike.lamda();//通过 类名 对象名 = new 类名的方式 调用,只能实现自己的实现方法
//局部内部类
Like like1 = new IIlike();// 接口 对象名 = new 类名
like1 = new IIlike2();
like1.lamda();
like1 = new YOU();//接口对象 = new 类名
like1.lamda();
//匿名内部类
like1 = new Like() {
@Override
public void lamda() {
System.out.println("Lamdba4");
}
};
like1.lamda();
//用Lambda简化1
like1 = ()->{
System.out.println("Lamdba5");
};
like1.lamda();
//简化2:
// 如果代码有多行则不能简化括号,多行必须有代码块包裹,必须是函数式接口
like1 =() -> System.out.println("Lamdba5");
}
}
//实现类2
class IIlike implements Like{
@Override
public void lamda() {
System.out.println("Lambda2 ");
}
}
//实现类1
class YOU implements Like{
@Override
public void lamda() {
System.out.println("Lambda1");
}
}
//接口
interface Like{
void lamda();
}
java----函数式接口---Lamda表达式
最新推荐文章于 2026-01-06 12:00:34 发布
本文深入探讨了Lambda表达式的使用方式,包括如何通过不同方法实例化接口,并展示了从传统类实现到简洁Lambda表达式的逐步演进过程。此外,还介绍了Lambda表达式在Java中的语法特点及其带来的代码简化优势。
904

被折叠的 条评论
为什么被折叠?



