Java8이 등장하면서 자바에는 많은 변화가 생겼다. 단순 객체 지향 프로그래밍을 넘어서 함수형 프로그래밍 방식을 지원하는 다양한 기능들이 추가되었는데, 함수형 프로그래밍을 제대로 이해하려면 함수형 인터페이스 -> 람다 표현식 -> 스트림 의 순서로 이해가 되어야한다. 함수형 프로그래밍에 대한 자세한 내용은 후술할 포스팅에서 이야기하도록 하고, 먼저 함수형 프로그래밍에 근간이 되는 *함수형 인터페이스*와 *람다식*에 대해 이야기해보려고 한다. 함수형 인터페이스(Functional Interface) - 함수형 인터페이스란? Java8에 도입된 함수형 인터페이스는 인터페이스가 마치 하나의 함수처럼 동작하기에 함수형 인터페이스라고 불린다. 함수형 인터페이스를 생성하는 방법은, 오직 단 하나의 추상 메소드를 ..