티스토리 뷰
728x90
C# 10.0 을 기준으로 작성되었습니다.
(2) 에서 계속 되는 설명으로,
우리가 프로젝트를 새로 만들게 되면 가장 먼저 접하게 되는 것 중에 하나가 액세스 한정자로 다음과 같은
4가지 액세스 한정자가 존재합니다.
- public
- protected
- internal
- private
액세스 한정자를 이용해 다음 6가지 수준의 접근 수준을 설정할 수 있습니다.
- public: 액세스가 제한되지 않습니다.
- protected: 액세스가 포함하는 클래스 또는 포함하는 클래스에서 파생된 형식으로 제한됩니다.
- internal: 액세스가 현재 어셈블리로 제한됩니다.
- protected internal: 액세스가 현재 어셈블리 또는 포함하는 클래스에서 파생된 형식으로 제한됩니다.
- private: 액세스가 포함하는 형식으로 제한됩니다.
- private protected: 액세스가 포함하는 클래스 또는 현재 어셈블리 내의 포함하는 클래스에서 파생된 형식으로 제한됩니다.
위의 액세스 한정자는 다음 그룹에서 사용이 되게 됩니다.
그룹 | 설정하지 않은 경우 기본 설정되는 수준 | 설정 가능한 수준 |
enum | public | None |
class | private | public protected internal private protected internal private protected |
interface | public | public protected internal private* protected internal private protected |
struct | private | public internal private |
말 그대로 설정하지 않으면 위의 그룹들의 기본 액세스는 표와 같이 설정되게 되므로,
생략되어 있는 경우 저렇게 되어 있다고 알면 됩니다.
체크 포인트
선언에서 형식을 지정하는 경우 파생되는 액세스의 수준은 상위 수준만큼의 액세스 상태가 되어야 합니다.
예시
class BaseClass {...}
public class MyClass: BaseClass {...} // Error
class 의 기본 액세스 수준은 pravite 이므로 public 은 되거나 public 이 pravite 로 변경되어야 합니다.
728x90
'C#' 카테고리의 다른 글
C# 기초문법 정리(5) 반복문 (0) | 2022.01.27 |
---|---|
C# 기초문법 정리(5) 속성 (0) | 2022.01.23 |
C# 기초문법 정리(4) 필드, 상수 (0) | 2022.01.22 |
C# 기초문법 정리(2) (0) | 2022.01.20 |
C# 기초문법 정리(1) (0) | 2022.01.20 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- DEA
- cloud
- 강좌
- 유니티
- glue
- 성운
- SageMaker
- 프로그래밍
- exam
- 판타스틱
- 우주
- quicksight
- 학습
- 랭킹
- c#
- mla
- 개발
- 초급
- Solution
- Unity
- 구독자
- 성단
- 시샵
- 유튜브
- 우주과학
- 게임개발
- AWS
- Redshift
- 기초
- 과학
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함