방구석 상상코딩

[JAVA] 접근 지정자 ( public / private / protected ) 본문

Spring Boot/JAVA

[JAVA] 접근 지정자 ( public / private / protected )

구석탱 2022. 1. 5. 09:24

접근 지정자란?

접근 지시자, 접근 제한자, 액세스 한정자라고도 불리며, 클래스(Class), 메서드(Method), 변수(Variable)에 대한 접근성을 지정하는 키워드로써 public / private / protected 중 하나를 선택하여 사용할 수 있다.

만약 위 세 가지중 하나를 지정하여 사용하지 않을 경우 default를 기본으로 설정된다.

 

 

[접근 지정자의 사용 범위]

접근지정자 동일 클래스 동일 패키지 상속 다른 패키지
default O O X X
public O O O O
private O X X X
protected O O O X

 


1. public

동일 클래스, 동일 패키지, 상속, 다른 패키지 등 어디에서나 접근 가능한 접근 지정자로 아래와 같이 사용할 수 있다.

// Class
public class ClassName{ }

// Method
public void MethodName(){ }

// Variable
public int variableNum = 0;

// Static
public static int staticNum = 0;

// Final
public final int FINAL_NUM = 0;

 

2. private

동일 클래스에서만 접근 가능한 접근 지정자로 아래와 같이 사용할 수 있다.

// Class
private class ClassName{ }

// Method
private void MethodName(){ }

// Variable
private int variableNum = 0;

// Static
private static int staticNum = 0;

// Final
private final int FINAL_NUM = 0;

 

3. protected

동일 클래스, 동일 패키지, 상속에서만 접근 가능한 접근 지정자로 아래와 같이 사용할 수 있다.

// Class
protected class ClassName{ }

// Method
protected void MethodName(){ }

// Variable
protected int variableNum = 0;

// Static
protected static int staticNum = 0;

// Final
protected final int FINAL_NUM = 0;

 

4. default

동일 클래스, 동일 패키지에서만 접근 가능한 접근 지정자로 아래와 같이 사용할 수 있다.

// Class
class ClassName{ }

// Method
void MethodName(){ }

// Variable
int variableNum = 0;

// Static
static int staticNum = 0;

// Final
final int FINAL_NUM = 0;

'Spring Boot > JAVA' 카테고리의 다른 글

[JAVA] 주석(Comment)  (0) 2022.01.12
[JAVA] 식별자(Identifier)와 예약어(Keyword)  (0) 2022.01.11
[JAVA] get(getter) / set(setter)  (0) 2022.01.06