참고자료 : 뇌를 자극하는 C# 5.0 프로그래밍 일부 발췌 (직접 작성)
객체 지향 프로그래밍의 3대 특성에는
상속성, 다형성, 은닉성 이 있습니다.
이건 은닉성에 관한거
Public
클래스의 내/외부 모든 곳에서 접근할수있음. (다른 어셈블리에서도(DLL로 참조해도 수정할수있다는말))
Protected
클래스의 외부에서는 접근불가. 파생 클래스에서는 접근가능
Private
클래스 내부에서만 접근가능
internal
같은 어셈블리 코드에서만 클래스 내외부 모두 접근가능(같은 어셈블리라면 public 과 같음)
dll 같은거 만들때 쓰임
protected internal
같은 어셈블리 코드에서 protected 와 같음. 다른 어셈블리에서는 private 와 같음
참고로 접근 한정자를 수식하지 않으면
자동으로 private 가 됨.
C#