
언어/JAVA
[Effective Java] 익명 클래스보다는 람다를 사용하라
아이템 42 : 익명 클래스보다는 람다를 사용하라 예전에는 자바에서 함수 타입을 표현할 때 추상 메서드를 하나만 담은 인터페이스(드물게는 추상 클래스)를 사용했다. 이런 인터페이스의 인스턴스를 함수 객체라고 하여 특정 함수나 동작을 나타내는 데 썼다. 1997년 JDK 1.1이 등장하면서 함수 객체를 만드는 주요 수단은 익명 클래스가 되었다. 아래 코드는 문자열을 길이순으로 정렬하는데, 정렬을 위한 비교 함수로 익명 클래스를 사용한다. 1 2 3 4 5 Collections.sort(words, new Comparator()) { public int compare(String s1, String s2) { return Integer.compare(s1.length(), s2.length()); } });..