1、函数式接口
函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。
2、把函数本身作为参数传入另一个函数的实现方式
在函数式编程思想下,允许把函数本身作为参数传入另一个函数。Java中使用函数式接口来实现“传递行为”的这种思想。
2.1、方式1
public class TestClassA {
@FunctionalInterface
public interface SysMsgCallBack{
public void call();
};
public void sysMsg(String msg,SysMsgCallBack callBack){
System.out.println("msg:\t"+msg);
callBack.call();
}
}
public class ApplicationMain {
public static void main(String[] args) {
TestClassA testClassA=new TestClassA();
testClassA.sysMsg("这是输出的信息", new TestClassA.SysMsgCallBack() {
@Override
public void call() {
System.out.println("SysMsgCallBack执行");
}
});
}
}
2.2、方式2
public class TestClassA {
@FunctionalInterface
public interface SysMsgCallBack{
public void call();
};
public void sysMsg(String msg,SysMsgCallBack callBack){
System.out.println("msg:\t"+msg);
callBack.call();
}
}
public class ApplicationMain {
public static void main(String[] args) {
TestClassA testClassA=new TestClassA();
testClassA.sysMsg("这是输出的信息", ()->{
System.out.println("SysMsgCallBack执行");
});
}
}