블로그

[JAVA] 람다식 본문

개발자 준비과정/JAVA

[JAVA] 람다식

하늘바람a 2024. 3. 13. 17:50

람다식(lambda expression) :

함수형 인터페이스(Functional Interface)의 익명 클래스의 객체 생성코드를 간단히 한 것

  • 참고) 함수형 인터페이스 : 추상메소드가 단 하나인 인터페이스

함수형 인터페인스인지 확인해주기 위해 추상메소드가 하나인지 컴파일러가 검사해주는 annotaion이 있다.

이를 @FuctionalInterface 라고 한다.

// @FunctionalInterface annotation
// : 마크된 인터페이스가 추상 메소드가 하나인지 컴파일러가 검사
@FunctionalInterface
interface C02MyInterfaceP {
    void method1(int a, int b);
}

 

자바는 람다식을 익명 구현 객체로 변환한다.

 

람다식은 인터페이스의 익명 구현 객체이므로 인터페이스 타입의 매개변수에 대입될 수 있다.

 

람다식의 종류에 대해 알아보자

1. 매개변수가 2개 이상 있고 리턴이 없는 추상 메소드
2. 매개변수가 1개 있고 리턴이 없는 추상 메소드
3. 매개변수가 없고 리턴이 없는 추상 메소드
4. 리턴이 있는 추상 메소드

 

메소드 참조

  1. static method 참조
  2. instance method 참조
  3. 임의 객체의 인스턴스 메소드 참조
  4. 생성자 참조