若接口中有多个函数,如何使用lambda表达式

Lambda表达式只支持函数式接口  也就是只有一个抽象方法的接口


可以使用@FunctionalInterface标注函数式接口,在编译时提前发现错误。



例子:

package test;
@FunctionalInterface
public interface IParmas1 {  
    void call(A a); 
    void call2(A a); 
}  


编译时会报错:

Invalid '@FunctionalInterface' annotation; IParmas1 is not a functional interface   就是因为使用了这个注解 接口只能写一个抽象方法

你可能感兴趣的:(若接口中有多个函数,如何使用lambda表达式)