함수적 인터페이스 (@FunctionalInterface) - 모든 인터페이스는 람다식의 타겟타입으로 사용할 수 없다. (= 모든 인터페이스가 람다식으로 대입될 수 없다.) - 람다식은 하나의 메소드를 구현하는 것이기 때문에 인터페이스에는 구현될 단 하나의 추상메소드만 존재해야한다. - 그러기 위해서 사용하는 방식이 함수적 인터페이스. 인터페이스에 단 하나의 추상메소드만 있어야한다. - @FunctionalInterface 어노테이션은 컴파일러가 어노테이션이 있는 인터페이스의 추상메소드 개수를 세어 2개 이상인 경우 컴파일 오류를 낸다. - 그러나 어노테이션이 없다고 함수적 인터페이스가 아니라고는 하지 않는다. 단지 개발자의 실수를 방지하기 위한 체킹용 어노테이션이다. 매개변수와 리턴값이 없는 람다식 @..