C#에 존재하는 접근제한자는 4가지입니다.
기본값은 private입니다.

접근제한자는 클래스, 변수, enum, 함수 앞에 적어주게 되고, 선언된 접근제한자의 영향을 받습니다.

1. public
public으로 선언된다면 어느 곳에서든 자유롭게 사용될 수 있습니다. 아무런 제한을 받지 않고 원하는 곳에서 사용됩니다.

2. private
private으로 선언되면 약간의 제한을 갖게 됩니다. 예를 들어 어떤 클래스에 변수들이 private으로 선언된 경우 해당 클래스에서만 접근이 가능합니다.

3. internal
internal로 선언된다면 해당 프로젝트에 public처럼 사용됩니다. 자신의 프로젝트에서 내부적으로 사용된다는 뜻이죠. 이는 외부에서 사용될 가능성이 있는 프로젝트에서 유용하게 사용됩니다. 해당 프로젝트의 사용자가 굳이 몰라도 되는 정보를 감추는 것이죠. 클래스를 생성할 경우 아무런 접근제한자를 선언하지 않았다면, 기본값은 internal 입니다.

4. protected
protected로 선언된다면 상속받은 자식의 클래스에서만 사용 가능한 제한을 갖습니다.

접근제한자를 잘 고려해서 프로그램을 만든다면 코드를 구조화하고 체계적으로 정리할 수 있는 장점이 있습니다. 개인적으로 접근제한자는 항상 명시적으로 선언해주는 습관을 가지면 좋다고 생각해요.


+ Recent posts