Runnable에 람다를 제공 할 때 왜 실행 메서드를 재정의 할 필요가 없습니까?

빌랄 자밀

여기에 이미지 설명 입력

val obj = Runnable {
        for (i in 1..3)
        {
            println("$i")
            Thread.sleep(500)
        }
    }
    val r1 = Thread(obj)
    r1.start()
mightyWOZ

Kotlin에는 SAM (Single Abstract method) Conversion 이라는 기능 lambda이있어 SAM인터페이스가 예상되는 위치 를 지정할 수 있고 언어가 구현 생성을 처리합니다. 이는 method이러한 인터페이스 (예 : Runnable)에 하나만 있기 때문에 의미가 있으므로 모든 상용구 코드를 작성해야하는 이유 SAMlambda.

그래서 예를 들어 당신이 그나마에도 불구하고 overriderun method, 당신은뿐만 제공하는 코드는 lambda실제로 run메소드의 구현입니다. 완전한 형태로 보면 다음과 같습니다.

val obj = object: Runnable{
    override fun run() {
        for (i in 1..3)
        {
            println("$i")
            Thread.sleep(500)
        }
    }
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

노드를 제거 할 때 왜 널 (null)에 해당 노드의 다음에 설정할 필요가 없습니다?

분류에서Dev

인수가 필요할 때 한 번에 두 개의 스레드를 실행할 수 없습니다.

분류에서Dev

양식 요소에서 재설정 메소드를 실행할 때 숨겨진 필드가 재설정되지 않는 이유는 무엇입니까?

분류에서Dev

activator run cmd를 실행할 때 왜 org.scalasbt sbt가 필요합니까?

분류에서Dev

tmux에서 gpg를 실행할 때 왜 mutt가 멈추나요?

분류에서Dev

Laravel 쿼리에서 코드를 실행할 때 의미가 없습니다.

분류에서Dev

unittest를 실행할 때 왜 "-m"과 "unittest"가 있습니까?

분류에서Dev

이 코드를 실행할 때 왜 inf가 인쇄됩니까?

분류에서Dev

C #에서 제네릭을 사용할 때 자식 클래스의 재정의 된 메서드를 어떻게 실행합니까?

분류에서Dev

Docker에서 "tty"를 실행할 때 왜 "tty가 아님"이 표시됩니까?

분류에서Dev

다른 ctor에서 ctor를 호출 할 때 왜 문제가 있습니까?

분류에서Dev

Maven에서 testng 테스트를 실행할 때 BeforeGroups 메서드가 실행되지 않습니다.

분류에서Dev

루프를 통해 반환 된 요소 컬렉션을 실행할 때 JavaScript가 문서 get 메서드에서 반환 된 요소를 복제합니다.

분류에서Dev

OpenCL을 사용하여 GPU에서 실행할 때 OpenCV가 어설 션 실패 오류를 제공합니다.

분류에서Dev

왜 내 코드는 아니지만 AWS 람다 함수의 표준 Node.js를 파일에서 실행할 수 있습니까?

분류에서Dev

내 Windows 컴퓨터에 암호가 없습니다. 왜 WSL에서 sudo를 수행 할 때 암호를 요청합니까?

분류에서Dev

실행 가능한 비트가 설정되지 않은 경우 왜 루트를 실행할 수 없습니까?

분류에서Dev

사용자 정의 Comparator가 제공되거나 요소가 Comparable을 구현할 때 메서드에서 논리를 분리합니까?

분류에서Dev

nslookup, dig를 실행할 때 필요한 키를 사용할 수 없습니다.

분류에서Dev

람다에서 await를 사용할 수 있는데 왜 람다에서 yield를 사용할 수 없습니까?

분류에서Dev

정규식은 실행할 때마다 다른 결과를 제공합니다.

분류에서Dev

Ada : 콘솔에 정수를 인쇄 할 때 왜 큰 공간이 있습니까?

분류에서Dev

이 코드를 실행할 때 왜 NullPointerException이 발생합니까?

분류에서Dev

추상 클래스를 상속 할 때 왜 실행 결과가 기대에 부응하지 않습니다

분류에서Dev

사용자 정의 양식 유효성 검사 내에서 함수를 실행할 수 없습니다. 왜?

분류에서Dev

jar에서 실행할 때 javafx 리소스를로드 할 수 없습니다.

분류에서Dev

Android IllegalStateException : 활동의 메서드를 실행할 수 없습니다. 새로운 활동을 시작할 때

분류에서Dev

"제공된 실행 역할에 EC2에서 CreateNetworkInterface를 호출 할 권한이 없습니다"를 수정할 수 없습니다.

분류에서Dev

다중 노드 하둡 클러스터 설정에서 데이터 노드를 실행할 수 없습니다. 제안이 필요합니다.

Related 관련 기사

  1. 1

    노드를 제거 할 때 왜 널 (null)에 해당 노드의 다음에 설정할 필요가 없습니다?

  2. 2

    인수가 필요할 때 한 번에 두 개의 스레드를 실행할 수 없습니다.

  3. 3

    양식 요소에서 재설정 메소드를 실행할 때 숨겨진 필드가 재설정되지 않는 이유는 무엇입니까?

  4. 4

    activator run cmd를 실행할 때 왜 org.scalasbt sbt가 필요합니까?

  5. 5

    tmux에서 gpg를 실행할 때 왜 mutt가 멈추나요?

  6. 6

    Laravel 쿼리에서 코드를 실행할 때 의미가 없습니다.

  7. 7

    unittest를 실행할 때 왜 "-m"과 "unittest"가 있습니까?

  8. 8

    이 코드를 실행할 때 왜 inf가 인쇄됩니까?

  9. 9

    C #에서 제네릭을 사용할 때 자식 클래스의 재정의 된 메서드를 어떻게 실행합니까?

  10. 10

    Docker에서 "tty"를 실행할 때 왜 "tty가 아님"이 표시됩니까?

  11. 11

    다른 ctor에서 ctor를 호출 할 때 왜 문제가 있습니까?

  12. 12

    Maven에서 testng 테스트를 실행할 때 BeforeGroups 메서드가 실행되지 않습니다.

  13. 13

    루프를 통해 반환 된 요소 컬렉션을 실행할 때 JavaScript가 문서 get 메서드에서 반환 된 요소를 복제합니다.

  14. 14

    OpenCL을 사용하여 GPU에서 실행할 때 OpenCV가 어설 션 실패 오류를 제공합니다.

  15. 15

    왜 내 코드는 아니지만 AWS 람다 함수의 표준 Node.js를 파일에서 실행할 수 있습니까?

  16. 16

    내 Windows 컴퓨터에 암호가 없습니다. 왜 WSL에서 sudo를 수행 할 때 암호를 요청합니까?

  17. 17

    실행 가능한 비트가 설정되지 않은 경우 왜 루트를 실행할 수 없습니까?

  18. 18

    사용자 정의 Comparator가 제공되거나 요소가 Comparable을 구현할 때 메서드에서 논리를 분리합니까?

  19. 19

    nslookup, dig를 실행할 때 필요한 키를 사용할 수 없습니다.

  20. 20

    람다에서 await를 사용할 수 있는데 왜 람다에서 yield를 사용할 수 없습니까?

  21. 21

    정규식은 실행할 때마다 다른 결과를 제공합니다.

  22. 22

    Ada : 콘솔에 정수를 인쇄 할 때 왜 큰 공간이 있습니까?

  23. 23

    이 코드를 실행할 때 왜 NullPointerException이 발생합니까?

  24. 24

    추상 클래스를 상속 할 때 왜 실행 결과가 기대에 부응하지 않습니다

  25. 25

    사용자 정의 양식 유효성 검사 내에서 함수를 실행할 수 없습니다. 왜?

  26. 26

    jar에서 실행할 때 javafx 리소스를로드 할 수 없습니다.

  27. 27

    Android IllegalStateException : 활동의 메서드를 실행할 수 없습니다. 새로운 활동을 시작할 때

  28. 28

    "제공된 실행 역할에 EC2에서 CreateNetworkInterface를 호출 할 권한이 없습니다"를 수정할 수 없습니다.

  29. 29

    다중 노드 하둡 클러스터 설정에서 데이터 노드를 실행할 수 없습니다. 제안이 필요합니다.

뜨겁다태그

보관