2016-10-12 2 views
1

@Tested는 내부적으로 클래스 객체를 인스턴스화합니다. 하지만 싱글 톤 클래스의 경우 @Tested가 내부적으로 인스턴스를 생성하는 이유는 싱글 톤 전용 생성자가 있기 때문입니다.@Tested가 내부적으로 싱글 톤 클래스 용 객체를 만드는 방법은 무엇입니까?

+0

JMockit에는 개인 메서드와 생성자를 호출 할 수있는'Deencapsulated' 클래스가 있습니다. 비슷한 일이 여기에서 일어날 것을 기대합니다. – dcsohl

답변

0

개인 생성자 (또는 필드, 메서드 등)는 항상 Reflection을 통해 실행/액세스 할 수 있습니다.

@Tested을 사용하면 생성자의 액세스 가능성에 관계없이 인스턴스가 만들어집니다. 이것은 API documentation에 설명되어 있습니다 :

여러 만족할 생성자는 대부분의 매개 변수를 사용하여 하나는 넓은 접근 한 후이있는 경우

(즉, 첫 공개 후, 보호, 다음 패키지 개인, 그리고 마지막으로 개인)을 선택 .