더북(TheBook)

34.2 액세스 한정자

필드를 만들고 클래스 외부(다른 클래스)에서 사용하도록 설정하려면 public 액세스 한정자를 붙이거나 나중에 자세히 배울 속성(property)으로 변환시켜야 합니다.

 

멤버 보이기

액세스(접근) 한정자로 클래스의 ‘멤버에 대한 보이기(member visibility)’ 여부를 적용할 수 있습니다.

액세스 한정자를 간단히 정리하자면, 클래스와 클래스의 멤버에는 액세스 한정자를 붙여 접근 권한을 설정할 수 있습니다. 아무것도 붙이지 않거나 private을 붙이면 해당 클래스의 멤버는 해당 파일이나 클래스 영역에서만 사용됩니다. public을 붙이면 해당 클래스와 멤버에 제한 없이 외부에서도 접근 가능합니다.

 

액세스 한정자의 종류

클래스와 클래스 간 멤버에 접근할 때는 다음 액세스 한정자가 적용됩니다. 기본적으로 클래스 또는 클래스의 멤버에 액세스 한정자를 붙이지 않으면 private 한정자로 인식합니다. 다음 내용은 한 번 정도 읽고 넘어가세요.

public: 멤버에 대한 접근이 제한되지 않습니다. 모든 곳에서 접근 가능합니다. public이 지정된 클래스 및 클래스의 멤버는 항상 접근 가능합니다.

private: 현재 클래스 내에서만 접근 가능합니다. private이 지정된 클래스 및 멤버는 해당 클래스에서만 접근 가능합니다.

protected: 현재 클래스 또는 현재 클래스를 상속하는 자식 클래스에만 접근이 허가됩니다. protected가 지정된 클래스 및 멤버는 해당 클래스와 해당 클래스를 상속하는 파생 클래스에서 접근 가능합니다. 상속을 학습할 때 자세히 다룹니다.

internal: 현재 프로젝트의 모든 클래스에 접근이 허가됩니다.

protected internal: 현재 어셈블리(DLL 파일) 또는 현재 어셈블리에서 파생된 모든 클래스에 액세스가 허가됩니다. internal이 지정된 클래스 또는 멤버는 해당 어셈블리(같은 프로그램)에서 접근 가능합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.