문제

나는 항상 그들이 그랬다고 믿지만, 여기에서 몇 가지 답변을 보면 의심이 듭니다...

리플렉션을 통해 클래스 외부에서 비공개 필드/속성/메서드에 액세스할 수 있나요?

도움이 되었습니까?

해결책

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

액세스 수정자는 보안의 한 형태가 아닙니다!

다른 팁

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

예, 가능합니다. 액세스할 때 BindingFlags에 액세스 한정자를 지정하기만 하면 됩니다.

그래 넌 할수있어:하지만 왜 그렇게 하려는지 스스로에게 질문해야 합니다. :)

실제로 의미가 있는 경우는 단 하나 뿐이며 이는 UnitTest입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top