313page 함수의 두번쨰 인자의 Array<outString> 에 대해서 궁금합니다!
Opened this issue · 4 comments
오타인지 아니면 outString 이라는 형이 존재하는건가요?
저는 코드를 작성했더니 빨간 라인으로 못쓰게 되어서요..
위치 정보를 얻고 싶은데 앞부분의 구글 맵을 먼저 구현한게 아니라
위치정보만 얻고자 해당 부분은 건너뛰고 구현중인데,
앞부분에도 연관된 내용은 없는것같아서 질문드려요!
지금 313페이지를 보고 있는데 그런 부분을 찾을 수가 없습니다.
죄송하지만 페이지 확인 한번만 더 부탁드릴게요.
일단 outString 이란 타입은 없습니다.
죄송합니다. 페이지를 헷갈렸습니다!
312page의 onRequestPermissionResult함수의 2번째 인자인,
permissions: Array 이부분입니다.
올려주신 소스를 보니, out String 이라는걸 확인했습니다!...
자로형 앞에 out 이 들어가있는건 생소해서 코틀린에서 사용하는 새로운 자료형인줄알았습니다..
저 out 의미를공부하려면 어떻게 검색하면 좋을까요?
아하. 저도 212페이를 봤는데도 편집 때문에 못 찾았었네요.
일단 간단히 말하면 Java 제네릭에서 ? extends String 이 코틀린에서 out String 이 됩니다.
이 부분은 onRequestPermissionResult를 오버라이드 하면서 자동으로 작성되는 부분이라 별 생각이 없었습니다.
즉 String을 상속한 것만 된다는 건데, String은 상속 금지라서 상속이 안 되거든요.
방금 out을 임의로 제거해 봤는데 문제없이 동작합니다.
오히려 왜 자동완성시 out이 붙었는지가 의문이네요. 의문을 가지게 해 주셔서 감사드리고요.
공식문서와 관련 블로그 링크 공유 드릴게요. 참고하세요.
https://kotlinlang.org/docs/reference/generics.html#generics
https://thdev.tech/kotlin/androiddev/2017/10/03/Kotlin-Generics/