본문 바로가기
Java

java의 접근제어자(Access Modifier)

by Euisaac 2024. 4. 11.

접근제어자(Access Modifier)란?

접근제어자는 클래스, 변수, 메서드 등의  접근  권한을 지정해 주는 역할을 한다.

외부로부터 데이터를 보호하기 위해 사용하며 java에서는 public, protected, default, private 네가지 접근 제어자가 있다.

 

1. 클래스의 접근 제어자

클래스의 접근 제어자는 publicdefault만 사용 가능하다.

 

1. public- 어떤 클래스에서도 접근이 가능, 접근 제한이 전혀 없다.

2. default -접근 제어자가 설정되어있지 않은 경우 접근제어자는 자동으로 default로 설정, 같은 패키지 내에서만 접근이 가능하다.

 

public class Scores { // public 접근 제어자를 이용한 클래스, 접근제한 없음

}

class Scores { // default 접근 제어자를 이용한 클래스, 같은 패키지

}

2. 클래스 멤버의 접근 제어자

클래스 멤버의 접근 제어자는 public, protected, default, private가 있다.

접근 허용 범위는 public > protected > default > private로 public이 가장 넓으며 private가 가장 제한적이다.

 

1. public- 변수나 메서드는 접근 제한이 전혀 없다.

2. protected- 같은 패키지의 모든 클래스와 다른 패키지의 상속관계 클래스

3. default- 같은 패키지의 모든 클래스에서 접근 가능

4. private- 동일 클래스에서 접근 가능

 

접근 허용 범위: public > protected > default > private

  같은 클래스 같은 패키지 상속관계 클래스 다른 패키지
private O X X X
default O O X X
protected O O O X
public O O O O

 

 

'Java' 카테고리의 다른 글

Java 콘솔 입력 (scanner)  (0) 2024.05.23
Java 증감 연산자  (0) 2024.05.23
참조형 타입(reference type)  (0) 2024.05.09
Java 표준 입출력 system 클래스  (0) 2024.04.11