: 메소드를 하나의 식으로 표현한 것
메소드를 람다 표현식으로 표현하면 클래스를 작성하고 객체를 생성하지 않아도 메소드를 사용할 수 있다.
(매개변수) -> {함수몸체}
Variable used in lambda expression should be final or effectively final
원인 : 람다 실행 시 실행되던 메소드의 스택 영역에 저장되는 외부 변수들에 대해서는 참조만 가능하고 값 변경은 불가. --> final or effectively final 변수만 사용 가능.
람다 캡쳐링 : 람다가 실행될 때 람다 캡쳐링 발생.
람다 캡쳐링 시 람다의 새로운 스택을 생성, 실행되고 있던 메소드의 스택 데이터들을 그대로 가져와 람다의 스택에 그대로 복사.