본문 바로가기
Programming/Java * Spring

[Java] 04. 접근 권한(Access Authority)

by 고막고막 2019. 3. 20.

접근 권한(Access Authority)

  •  Public: 어디서나 마음대로 접근 호출가능
  •  Protected: 패키지가 동일하거나 다른 패키지라도 상속이면(권한이 있으면) 접근 호출 가능
  •  Default: 동일한 패키지만 접근 호출 가능
  •  Private: 클래스내에서만 접근호출가능


필드의 접근권한

 1) 필드는 일반적으로 private으로 설정한다.

 2) 대신 getter나 setter매서드를 이용해서 값을 넣거나 가져올 수 있도록 한다. getter나 setter는 일반적으로 default나 public을 준다.

 3) setter 매서드에는 들어오는 값을 확인하는 코드를 넣을 수 있기 때문에 직접 필드에 접근하는 것보다 안전성이 높아진다.

 

매서드의 접근 권한

 1) 매서드는 기본적으로 default나 public을 전제로 한다. 왜냐하면 호출을 기본으로 하기 때문.

 2) 다만 매서드중에는 내부에서만 동작하는 것이 있으므로 이런 매서드는 제한을 둔다.(private, protected) 


생성자의 접근제한

생성자는 객체를 만들때 호출되기 때문에 public을 주는것이 일반적이다.