카테고리 없음
20250321_(2) Access Modifiers 접근 지정자
joystothecore_
2025. 3. 23. 14:45
Access Modifiers (접근 지정자)는 클래스, 구조체, 인터페이스, 열거형 등의 멤버에 대한 접근 범위를 결정하는 역할을 합니다. 이는 객체지향 프로그래밍 (OOP)의 핵심 원칙인 정보 은닉을 실현하는 수단 중 하나입니다.
따라서 C#에서는 접근 범위에 따른 다양한 접근 지정자가 존재하는데요, 각 접근 지정자가 어떤 상황에서 사용되는지 한 번 살펴보겠습니다.
---
1. 접근 지정자의 종류와 개념
1) public
의미
Public; 모든 곳에서 접근 가능합니다. 동일 어셈블리 (프로젝트) 내부 뿐만 아니라, 다른 프로젝트나 외부 라이브러리에서도 참조가 가능하다는 특징이 있습니다.
- 라이브러리 (API)에서 공개해야 할 메서드, 클래스, 속성 등을 public으로 지정해 외부 코드가 사용 가능하도록 할 경우 사용합니다.
- 정말 코드 내/외부에서 자유로운 접근이 가능하므로 자유롭게 수정해도 되는 멤버인 경우에 한정해 사용합니다.
2) private
의미
Private; 해당 클래스 내부 (또는 구조체 내부) 에서만 접근 가능합니다.
클래스를 선언했을 때, 멤버 접근 지정자를 명시하지 않으면 기본값으로 private옵션으로 지정됩니다.
(단, C# 버전이나 상황에 따라 조금씩 다를 수 있으니 가급적 명시적으로 작성하는 것이 좋습니다.)
- 외부에서 직접 접근하면 안 되는 내부 구현 로직 등에 사용 됩니다.
- 잘못된 값을 세팅하면 에러가 날 수 있는 중요한 필드입니다.