목록함수형 인터페이스 (2)
초보개발자 긍.응.성
이 장에서는 람다 표현식을 어떻게 만드는지, 어떻게 사용하는지, 어떻게 코드를 간결하게 만들 수 있는지 설명한다. 또한 자바 8 API에 추가된 중요한 인터페이스와 형식 추론 등의 기능을 확인한다. 람다의 특징 익명 - 보통의 메서드와 달리 이름이 없으므로 익명이라 표현한다. 구형해야 할 코드에 대한 걱정거리가 줄어든다 함수 - 람다는 메서드처럼 특정 클래스에 종속되지 않으므로 함수라고 부른다. 하지만 메서드처럼 파라미터 리스트, 바디, 반환 형식, 가능한 예외 리스트를 포함한다. 전달 - 람다 표현식을 메서드 인수로 전달하거나 변수로 저장할 수 있다. 간결성 - 익명 클래스처럼 많은 자질구레한 코드를 구현할 필요가 없다. 람다의 구성 /* 람다 파라미터 | 화살표 | 람다 바디 */ (Apple a1,..
익명 클래스보다는 람다를 사용하라 익명 클래스 방식은 너무 코드가 길다. 단 하나의 추상 메서드를 갖는 함수형 인터페이스는 람다식으로 표현하자. 람다식의 경우 타입을 명시해야 코드가 더 명확할 때만 제외하고는, 람다의 모든 매개변수 타입은 생략하자. 익명 클래스는 함수형 인터페이스가 아닌 타입의 인스턴스를 만들 때만 사용하라 대신 람다는 이름이 없고 문서화도 못한다. 따라서 코드 자체로 동작이 명확히 설명되지 않거나 코드 줄 수가 많아지면 람다를 쓰지 말아야 한다. 람다보다는 메서드 참조를 사용하라 람다가 익명 클래스보다 나은 점 중에서 가장 큰 특징은 간결함이다. 하지만 더 간결한 방법은 메서드 참조이다. 미리 정의된 메서드 참조를 사용해도 되고, 람다로 작성할 코드를 메서드에 담은 다음 람다 대신 그..