본문 바로가기
JAVA

[JAVA] 접근제어자

by 집돌이디벨로퍼 2025. 2. 4.

클래스 멤버 변수를 private 로 접근제어자 설정을 해놓으면 바깥에서 그 클래스의 멤버변수를 직접 건드릴 수 없기 때문에 제한적인 제어가 가능해지므로 버그 발생범위를 제한시킬 수 있어 사용한다.

 

접근제어자의 핵심은 속성과 기능을 외부로부터 숨기는 것이다

 

지역변수에는 접근제어자 사용 불가

 

접근제어자 사용 - 클래스 레벨

클래스 레벨의 접근 제어자는 public 과 default 만 사용 가능하다 ( protected, private 는 사용 불가)

public 클래스는 반드시 파일명과 이름이 같아야함. (자바 규칙)

 

캡슐화

캡슐화에서 가장 필수로 숨겨야 하는 것은 속성(데이터)이다. 객체 내부의 데이터를 외부에서 함부로 접근하게 되면 클래스 안에서 다루고 있는 모든 로직을 무시하고 데이터를 변경할 수 있다. 결국 모든 안전망을 다 빠져나가 캡슐화가 꺠지게 된다.

 

기능

객체의 기능 중에서 외부에서 사용하지 않고 내부에서만 사용하는 기능들이 있따. 이런 기능들도 감추는 것이 좋다. 외부에서 사용하는 메서드(기능)들만 public으로 정의해 사용할 수 있어야한다.