• 로그인 함 해보끄나?

  • Sarangnamu.net June 17, 2003
    Home Login Profile Study Open Project Q&A Google Code
    kotlin and SAM
    Last Modify : 24 November, 2017(04:49)
    일단 kotlin 을 짬짬히 해본 결과 SAM 형태의 interface 를 별도로 더 이상 만들 필요 없음을 인지 했다 가령 자바는 아래와 같은 인터페이스로 작업했다면 interface ITest { void onResult(boolean res); } class Test { private ITest mListener void setOnTestListener(ITest l) { mListener = l } void test() { if (mListener != null) { mListener.onResult(true); } } } class main() { void test() { Test a = Test(); a.setOnTestListener((res) -> { }); a.test(); } } 코틀린은 아래와 같이 하면 끝난다. class Test { laiteinit var mListener : (Boolean) -> Unit fun test() { mListener(true) // or } } class main() { fun test() { val a = Test() a.mListener = { res -> } a.test() } } 만약 인자로 리스너를 받아야 된다면 아래처럼 한다. fun test(listener: (Boolean) -> Unit) { listener(true) } 마치 예전의 function point 같은 느낌이랄까?

    Comment


    입력하3 1513257825



    Locations of visitors to this page