【JavaSE】Lamda表達式
Lamda表達式推理學習
我們要實現一個方法 一般有以下幾種操作:
- 定義外部類,調用該接口
- 靜態內部類
- 局部內部類
- 匿名內部類
- lambda 表達式
由上至下,每一層都要簡易許多。
1. 定義外部類,調用該接口:
public class Lambda {
// 主方法main
public static void main(String[] args) {
// 顯示定義的一個like
ILike like = new Like();
like.lambda();
}
}
// 定義一個lambda1S的函數式接口
interface ILike {
void lambda ();
}
2. 靜態內部類
public class Lambda {
// 靜態內部類
static class Like2 implements ILike{
@Override
public void lambda() {
System.out.println("I like lambda2!");
}
}
// 主方法main
public static void main(String[] args) {
// 顯示定義的一個like2
ILike like2 = new Like2();
like2.lambda();
}
}
// 定義一個lambda1S的函數式接口
interface ILike {
void lambda ();
}
// 定義外部類,調用該接口
class Like implements ILike{
@Override
public void lambda() {
System.out.println("I like lambda!");
}
}
匯總解釋:
public class Lambda {
// 靜態內部類
static class Like2 implements ILike{
@Override
public void lambda() {
System.out.println("I like lambda2!");
}
}
// 主方法main
public static void main(String[] args) {
// 顯示定義的一個like
ILike like = new Like();
like.lambda();
// 顯示定義的一個like2
ILike like2 = new Like2();
like2.lambda();
// 局部內部類
class Like3 implements ILike{
@Override
public void lambda() {
System.out.println("I like lambda3!");
}
}
// 顯示定義的一個like2
ILike like3 = new Like3();
like3.lambda();
// 匿名內部類
like = new ILike() {
@Override
public void lambda() {
System.out.println("I like lambda4!");
}
};
like.lambda();
// lambda 表達式
like = () -> {
System.out.println("I like lambda4!");
};
like.lambda();
}
}
// 定義一個lambda1S的函數式接口
interface ILike {
void lambda ();
}
// 定義外部類,調用該接口
class Like implements ILike{
@Override
public void lambda() {
System.out.println("I like lambda!");
}
}

浙公網安備 33010602011771號