@FunctionalInterface
애노테이션을 선언하면 컴파일 시점에 추상메서드를 하나만 갖는지 체크해줌. 하나 이상이면 오류남(매개변수) ->{실행문;}
int add(int x, int y){
return x + y
}
//람다식으로 표현하면
(int x, inty) -> {retrun x + y;}
//함수형 인터페이스 선언하기
@FunctionalInterface
public interface I2{
int getMAX(int num1, int num2); //추상메서드 선언
}
public class TestI2 {
public static void main(String[] args){
I2 max = (x, y) -> (x >= y)? x : y; //람다식을 인터페이스형 max 변수에 대입
System.out.println(max.getMAX(10, 20)); //인터페이스형 변수로 메서드 호출
}
}