OOP 프로그래밍을 하면서 기본적으로 class 등 여러가지를 배우게 되는데
그중 하나인 접근제한자를 정리해봤습니다.
접근 제한자 | 설명 |
---|---|
public |
클래스 내, 외부와 파생 클래스에서도 클래스 멤버에 접근 가능 |
private |
private를 포함한 클래스 내에서만 접근 가능. 파생 클래스에서도 접근할 수 없다. |
protected |
기본 클래스와 파생 클래스에서만 접근 가능. |
internal |
동일 어셈블리 내에서 접근 가능 |
protected internal |
동일 프로그램 내에서 혹은 파생 클래스에서 클래스 멤버 이용가능 |
접근 제한자 | 클래스 내부 | 외부 클래스 | 파생 클래스 | 프로젝트 |
---|---|---|---|---|
public |
O |
O |
O |
O |
private |
O |
|
|
|
protected |
O |
|
O |
|
internal |
O |
O |
O |
|
protected |
O |
- |
O |
|
- : 사용한느 클래스가 해당 어셈블리 안에 있을 때만 접근 가능
구성 요소 | 기본 접근 제한자 | 사용 가능한 접근 제한자 |
---|---|---|
class |
private |
public, private, protected, internal, protected internal |
struct |
private |
public, private, internal |
interface |
public |
public |
enum |
public |
public |
아직도 배워야 할게 많습니다...
'프로그래밍&IT > C#' 카테고리의 다른 글
this의 3가지 용법 체크 (0) | 2014.12.02 |
---|---|
코드 리팩토링(refactoring) 관련 & 메소드 추출하기 (0) | 2014.11.16 |
using : namespace 선언 외 다른 활용 (0) | 2014.06.17 |
논리 연산자 우선순위 (0) | 2014.05.10 |
DateTime 클래스 (0) | 2014.05.08 |