Development/C#
[제프리 리처의 CLR via C#] 멤버 접근성
오늘도 진이
2021. 5. 18. 16:32
목차
2부. 타입 설계
6장. 타입과 멤버의 기본
멤버 접근성
- IL 코드를 검증함으로써 참조하는 멤버의 접근성이 설령 컴파일러 수준에서 접근성에 대한 점검이 누락되었다고 할지라도 실행 중에 이를 검사하므로 기능성을 보장받을 수 있다.
- C#에서는 선언하는 멤버에 명시적으로 한정자를 지정하지 않을 경우, 컴파일러는 모든 경우는 아니지만 대개 private 한정자를 자동으로 선택하여 적용하게 된다.
- 상속받은 타입에서 기본 타입에 선언된 멤버를 재정의하는 경우, 컴파일러는 원래의 멤버를 필요로 하며 재정의하는 멤버의 기본 접근성을 그대로 가져온다.
- 이렇게 원래보다 제한된 접근성을 가지도록 재정의된 메서드를 수정할 수 없는 이유는 상속받은 타입을 사용하는 쪽에서는 언제든 기본 타입으로의 캐스팅을 진행할 수 있고 기본 타입의 메서드를 통한 접근이 발생할 수 있기 때문이다.
Uploaded by Notion2Tistory v1.1.0