functionalprogramming
자바 익명클래스와 자바 람다 (Java Anonymous class, Java Lambda) 1편
자바의 람다는 익명클래스와 매우 비슷한 모습을 하고있다. 그러나 둘은 아주 다르다. 익명클래스 일단 익명클래스는 어쨌거나 사용할 때 보통 객체와 동일하게 힙에 할당이 된다. 메인메소드 내에서 익명클래스를 사용하면 컴파일 시에 $1, $2 등과 같은 순서대로 클래스파일이 생성이 된다. 예시로, 평범한 인터페이스를 하나 선언한다. 추상클래스나 일반 클래스도 상관없다. interface Test{ public int getNum(); } 그 후, 메인에서 바로 사용하기 위해 재정의를 해준다. public class LambdaTest { public static void main(String[] args) { Test t1 = new Test(){ public int num = 10; public int ge..