728x90
함수형 인터페이스
- 추상 메서드를 딱 하나만 가지고 있음
- Single Abstract method 인터페이스
- @FunctionInterface 어노테이션을 가지고 있는 인터페이스
@FunctionalInterface
public interface RunSomething {
int doIt(int num);
}
람다 표현식
- 함수형 인터페이스의 인스터를 만드는 방법으로 쓰일 수 있음
- 코드 줄이기 가능
- 메소드의 매개변수, 리턴 타입, 변수를 만들어 사용 가능
public class Foo {
public static void main(String[] args) {
RunSomething runSomething = num -> num + 10;
}
}
자바에서 함수형 프로그래밍
- 함수를 First class object로 사용할 수 있음
- 순수 함수 (사이드 이펙트가 없으며 상태가 없음)
- 고차 함수 (함수가 함수를 매개변수로 받거나 리턴 가능)
- 불변성
300x250
'Java' 카테고리의 다른 글
람다 표현식 (0) | 2023.07.09 |
---|---|
Java의 함수형 인터페이스 (0) | 2023.07.09 |
비즈니스 요구사항 설계 (0) | 2022.07.20 |
SOLID (0) | 2022.07.19 |
좋은 객체지향이란? (0) | 2022.07.18 |