정리/Java
Java - 함수형 인터페이스
난파선
2017. 2. 25. 12:00
단 하나의 추상 메서드만 선언된 인터페이스
interface ClassName {
public abstract int sum(int a, int b);
}
ClassName cn = new ClassName() {
// 기존에는 아래와 같이 new 함수를 사용하여 객체를 생성할 때 함수를 구현한다.
public int sum(int a, int b) {
return a + b;
}
};
// 함수를 사용한다.int c = cn.sum(1, 2);
//람다식 사용하기
ClassName cn2 = (a, b) -> a + b
cn2.sum(1, 2);
함수형 인터페이스를 매개변수로 받기
int test(ClassName cn) { // 고차원함수
reuturn cn.sum(1, 2);
}
test(cn2);
test((a, b) -> a + b); // 람다로 매개변수를 넘긴다.