c# 에서의 접근 제한자의 종류는 크게 보면 아래와 같다.
1. public
2. protected
3. private
4. internal
5. protected internal
6. private protected
여기서 public, protected, private 는 다들 쉽게 이해하지만
막상 internal 용어가 나오면 애매하게 햇갈려 하는 경우가 있는데 한마디로 정의하면
"서로 다른 어셈블리"에 있는 클래스들을 허용하는지 안하는지에 따라 다르다.
(private는 워낙 폐쇄적인 접근제한자 이므로 그냥 무조근 안된다고 생각하면 편함)
public , protected 접근제한자는 다른 어셈블리에 있는 클래스에서도 접근이 가능하지만
internal 제한자가 붙으면 같은 어셈블리에 있는 public 클래스만 접근이 가능,
protected internal은 같은 어셈블리에 있는 코드에서만 protected로 클래스 접근이 가능,
private protected는 같은 어셈블리에 있으면서 상속받은 클래스 내부에서만 접근이 가능하다.
한마디로 internal 제한자가 붙으면 더 "접근하기가 까다로워진다" 라고 생각하면 편하다.
'유니티 프로그래밍 > C# 프로그래밍' 카테고리의 다른 글
비주얼 스튜디오에서 활성화된 문서 추적하기 (0) | 2022.08.31 |
---|---|
C# this 키워드 (0) | 2022.08.14 |
C# 생성자와 종료자 (0) | 2022.08.13 |
C#에서의 추상화, 구체화 간단히 설명 (0) | 2022.08.07 |
C# 에서의 Switch 문 사용 예제 (0) | 2022.07.29 |