Kotlin

코틀린 FAQ_week10

지 슈 2023. 1. 28. 12:36

제네릭 클래스를 인자로 사용하는 애노테이션

KClass<out 허용할 클래스 이름>

→ 클래스를 인자로 받을 때의 형식

KClass<out 허용할 클래스 이름<*>>

→ 제네릭 클래스를 인자로 받을 때의 형식

⇒ 애노테이션이 어떤 인자로 쓰일지 알 수 없기 때문에 스타 프로젝션을 사용한다.

리플렉션

→ 객체에 접근

객체 + ::(더블콜론) + class

⇒ 객체에 접근가능하다.

(자바에서는 객체 + . + class 형식으로 주어진다.)

→ JSON 직렬화 라이브러리는 실행 시점에 정보를 알 수 있도록 리플렉션은 객체에 접근할 수 있어야 하기 때문에 사용.

메타데이터란?

→ 다른 데이터를 설명하기 위한 데이터

→ 애노테이션도 메타데이터의 종류이다.

⇒ 정보를 통제하고 접근할 수 있게 하는 정보유형을 정리한 2차 데이터 유형 : 메타데이터