접근제한자
public - 어디서나 사용이 가능함
private - private 를 포함한 클래스 내에서만 접근 가능
protected - 기본클래스와 파생 클래스에서만 접근가능
(즉 상속받은 클래스와 본인 클래스에서만 가능)
internal - 동일 어셈블리 내에서 접근 가능(즉 동일 프로그램 내에서만 사용가능)
protected internal - 동일 프로그램 내에서 혹은 파생 클래스에서 클래스 멤버 사용 가능
1번 프로그램
class class1
{
public a;
private b;
protected c;
internal d;
}
class class2 : class1
{
// 설정1
}
2번 프로그램
class class3
{
//설정2
}
위와 같은 경우
설정1에서는 a,c,d가 접근 가능하다.
private는 자기자신의 class에서만 가능하기 때문이다.
설정2에서는 a,c가 접근가능하다.
internal의 경우 같은 프로그램에서만 가능하기 때문이다.
접근제한자의 범위에 대해 잘알아두어야한다.