article thumbnail image
Published 2022. 6. 10. 16:40

접근제어자란?

  • 멤버 변수/함수 혹은 클래스에 사용되며 외부에서의 접근을 제한하는 역할을 합니다.

private : 같은 클래스 내에서만 접근이 가능합니다
default(nothing) : 같은 패키지 내에서만 접근이 가능합니다.
protected : 같은 패키지 내에서, 그리고 다른 패키지의 자손클래스에서 접근이 가능합니다.
public : 접근 제한이 전혀 없습니다.

👉 위의 설명을 토대로 접근 범위에 대해 정리를 하면 다음과 같습니다. (좁음) (넓음) private → default → protected → public

그렇다면 왜 접근 제어자를 사용하지?

  • 객체지향 프로그래밍이란 객체들 간의 상호작용을 코드로 표현하는 것입니다.
  • 이때 객체들간의 관계에 따라서 접근 할 수 있는 것과 아닌 것, 권한을 구분할 필요가 생깁니다.
  • 클래스 내부에 선언된 데이터의 부적절한 사용으로부터 보호하기 위해서, 이런 것을 캡슐화(encapsulation)라고 합니다.
  • 접근 제어자는 캡슐화가 가능할 수 있도록 돕는 도구입니다.
복사했습니다!