Lambda Expression란 프로그래밍에서 식별값 없이 실행할수 있는 함수 표헌 방법.
함수를 first Class Object로 취급한다.
Java 8버전부터 람다식을 사용할 수 있는데
예제로 자바에서 CallBack함수를 구현하는 예제에서
public interface ICallback { public void callbackMethod(); } public class CallbackClass extends Thread{ private ICallback callback; public CallbackClass(ICallback callback) { this.callback = callback; } public void run(){ doWork(); } public void doWork() { callback.callbackMethod(); } }
에서 아래와 같이 CallBack를 구현한다.
public class Main { public static void main(String[] args) { ICallback call = new ICallback() { @Override public void callbackMethod() { System.out.println("콜백 메소드 실행"); } }; CallbackClass callbackClass= new CallbackClass(call); callbackClass.start(); } }
이를 Lambda Expression을 사용하면 아래와 같은 소스로 같은 기능을 할 수 있다.
public class Main { public static void main(String[] args) { CallbackClass callbackClass = new CallbackClass( () -> System.out.println("람다식으로 콜백 실행하기")); callbackClass.doWork(); } }