通过从静态内部类===》成员内部类===》匿名内部类的推导,
最后简化匿名内部类的使用。
public class TestLambd2 {
//静态内部类
static class test implements Eat {
public void eat() {
System.out.println("=========>吃饭");
}
}
public static void main(String[] args) {
Eat ee=new test();
ee.eat();
//成员内部类
class test2 implements Eat {
public void eat() {
System.out.println("=========>睡觉");
}
}
ee=new test2();
ee.eat();
//匿名内部类
ee=new Eat() {////对ee初始化。
@Override
public void eat() {
System.out.println("=========>打豆豆");
}
};
ee.eat();
///jdk8简化,,对接口,以及实现方法权限修饰符,方法名进行省略。
ee=( ()->{//(是接口的括号,()是方法的括号
System.out.println("=========>不打豆豆");
}
);//(是接口的括号,
ee.eat();
}
}
interface Eat{////接口以及方法,
void eat();
}
class Ieat implements Eat{////外部类,
public void eat() {
System.out.println("=======吃吃吃");
}
}
本文通过示例展示了如何逐步从静态内部类、成员内部类到匿名内部类,并最终利用 Java 8 的 Lambda 表达式简化代码。通过具体的 Eat 接口实现案例,演示了不同内部类的使用方式及 Lambda 如何简化这些内部类的定义。
1246

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



