목록리플렉션 (2)
초보개발자 긍.응.성
10장 애노테이션과 리플렉션 💡 다루는 내용 애노테이션 적용과 정의 리플렉션을 사용해 실행 시점에 객체 내부 관찰 코틀린 실전 프로젝트 예제 애노테이션(annotation) - 라이브러리가 요구하는 의미를 클래스에게 부여할 수 있다. 리플렉션(reflection) - 실행 시점에 컴파일러 내부 구조를 분석할 수 있다. 10.1 애노테이션 선언과 적용 10.1.1 애노테이션 적용 @Test fun testTrue() { Assert.assertTrue(true) } 코틀린도 자바와 같은 방법으로 애노테이션을 적용한다. data class Date(val millisSinceEpoch: Long) { private val interval = LocalDateTime.ofInstant(Instant.ofEpo..
싱글턴 (Singleton) 싱글턴이란 인스턴스를 오직 하나만 생성할 수 있는 클래스를 말한다. 싱글턴의 전형적인 예로는 함수와 같은 무상태(stateless) 객체나 설계상 유일해야 하는 시스템 컴포넌트를 들 수 있다. 그런데 클래스를 싱글턴으로 만들면 이를 사용하는 클라이언트를 테스트하기 어려워질 수 있다. 타입을 인터페이스로 정의한 다음 그 인터페이스를 구현해서 만든 싱글턴이 아니라면 싱글턴 인스턴스를 mock 구현으로 대체할 수 없기 때문이다. 싱글턴을 만드는 방법 싱글턴을 만드는 방식은 보통 아래를 따른다. 생성자는 private 으로 감춘다 유일한 인스턴스에 접근할 수 있는 수단으로 public static 멤버를 마련한다. public static 멤버는 두 가지 방법으로 구현 가능하다. 하..