함수형 인터페이스

(int a, int b) -> a > b ? a : b

<=>

new Object() {
        int max(int a, int b) -> {
            return a > b ? a : b;
        }
    }
타입 f = (int a, int b) -> a > b ? a : b;
interface MyFunction {
    public abstract int max(int a, int b);
}

MyFunction f = new Function() {
        public int max(int a, int b) {
            return a > b ? a : b;
        }
    }; 
    
int big = f.max(5, 3); // 익명 객체의 메서드를 호출
MyFunciont f = (int a, int b) -> a > b ? a : b; // 익명 객체를 람다식으로 대체
int big = f.max(5, 3); // 익명 객체의 메서드 호출
@FunctionalInterface
interface MyFunction {
	public abstract int max(int a, int b);
}