2008-09-18 2 views
5

나는 항상 그랬다고 믿지만, 여기에 답을 보는 것이 의심 스럽다. ...수정 자도 반사에 영향을 줍니까?

리플렉션을 통해 클래스 외부에서 개인 필드/속성/메소드에 액세스 할 수 있습니까?

답변

5

예, 리플렉션을 통해 비공개 필드에 액세스 할 수 있습니다. 이것은 많은 ORM이 속성을 거치지 않고 개체를 채우는 방식입니다 (개체로드에서 실행하지 않을 비즈니스 논리를 호출 함).

액세스 한정자는 보안상의 형식이 아닙니다!

+2

응용 프로그램은 아마도 완전 신뢰 (또는 최소한 ReflectionPermission)가 필요합니다. – Lucas

2

예, 액세스 할 때 BindingFlags에 액세스 한정자를 지정할 수 있습니다.

3

그러나 리플렉션을 통해 클래스 외부에서 비공개/보호 된/내부 필드/속성/메소드에 액세스하려면 추가 권한이 필요합니다.

+1

예, 응용 프로그램에는 완전 신뢰 (또는 적어도 ReflectionPermission)가 필요합니다. – Lucas

0

예를 수행 할 수 있습니다하지만 당신은 정말 당신이

이 실제로 의미가 있습니다 하나의 경우이고, 이것은 유닛 테스트입니다 :)거야 왜 질문을 자신에게해야한다.

관련 문제