[java] 함수형 인터페이스와 람다 표현식의 관계는 어떤가요?
예를 들어, Runnable
인터페이스는 단일 추상 메소드 run
을 가지고 있으므로 함수형 인터페이스입니다. 다음은 람다 표현식을 사용하여 Runnable
을 구현하는 간단한 예제입니다.
public class Main {
public static void main(String[] args) {
// 람다 표현식을 사용하여 Runnable 인터페이스 구현
Runnable task = () -> {
System.out.println("Hello, world!");
};
// 스레드 실행
Thread thread = new Thread(task);
thread.start();
}
}
위 예제에서 () -> { System.out.println("Hello, world!"); }
부분이 람다 표현식으로, Runnable
인터페이스의 단일 메소드를 구현하는 익명 함수입니다.
이처럼 함수형 인터페이스와 람다 표현식은 자바에서 함수형 프로그래밍을 유연하게 지원하고, 코드를 더 간결하게 만들어줍니다.