야미의 개발

[JAVA]접근 제어자 - 개념과 이해 본문

JAVA

[JAVA]접근 제어자 - 개념과 이해

채야미 2024. 1. 18. 16:32

출처 

https://www.inflearn.com/course/%EA%B9%80%EC%98%81%ED%95%9C%EC%9D%98-%EC%8B%A4%EC%A0%84-%EC%9E%90%EB%B0%94-%EA%B8%B0%EB%B3%B8%ED%8E%B8/dashboard

 

김영한의 실전 자바 - 기본편 강의 - 인프런

실무에 필요한 자바 객체 지향의 핵심 개념을 예제 코드를 통해 쉽게 학습합니다., 국내 개발 분야 누적 수강생 1위, 제대로 만든 김영한의 실전 자바[사진][임베딩 영상]단순히 자바 문법을 안다

www.inflearn.com

 

본 내용은 김영한님의 실전 자바 강의를 보고 정리한 내용입니다 자세한 내용은 강의를 참고해주세요!

 

 

접근제어자

 

자바에서 제공하는 public,private와 같은 접근제어자를 사용하면 외부 클래스에서 필드나 메서드에 접근하는 것을 통제할 수 있습니다.

 

접근제어자의 종류

  • private : 같은 클래스 내에서만 사용 가능
  • default : 같은 패키지 내에서까지 사용 가능
  • protected : 같은 패키지이거나, 상속 관계의 경우 사용 가능
  • public : 모든 클래스에서 사용 가능

private -> default -> protected -> public

오른쪽으로 갈수록 더 허용하는 것이라고 생각하면 됩니다

 

접근 제어자 사용 위치

필드와 메서드, 생성자에 사용 가능합니다

public class Speaker { //클래스 레벨
    private int volume; //필드
	public Speaker(int volume) {} //생성자
 	public void volumeUp() {} //메서드
 	public void volumeDown() {}
 	public void showVolume() {}
}

 

 

접근제어자의 필요성 -> 캡슐화를 위해

캡슐화는 객체 지향 프로그래밍의 중요한 개념입니다.

캡슐화는 데이터를 처리하는 메서드와 데이터를 하나로 묶어 기능을 제공하고

외부에서의 허용하지 않은 변경이나 접근을 제한할 수 있어야합니다

 

따라서 접근제한자를 사용하여

필요한 기능만을 노출하고 나머지는 내부로 숨기는 것이 캡슐화에 필요합니다.

 

Comments