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();
	}
}


+ Recent posts