JAVA/포스팅

자바 메서드 접근 제어자 (Access Modifier)

짜집퍼박사(짜박) 2023. 11. 7. 00:06

자바 메서드의 접근 제어자는 메서드가 어떻게 접근되고 사용되는지를 제어하는 키워드입니다. 메서드의 접근 제어자는 해당 메서드가 다른 클래스에서 호출될 수 있는지, 어디에서 호출될 수 있는지를 결정합니다.

 

1. public (공개)

public 접근 제어자는 해당 메서드가 어디에서나 접근 가능하도록 합니다. 다른 클래스의 객체 또는 코드에서 자유롭게 호출할 수 있습니다.

public void doSomething() {
    // 이 메서드는 어디서나 호출 가능
}

 

2. private (비공개)

private 접근 제어자는 해당 메서드가 같은 클래스 내부에서만 접근 가능하도록 합니다. 다른 클래스에서 직접 호출할 수 없습니다.

private void doSomething() {
    // 이 메서드는 같은 클래스 내부에서만 호출 가능
}

 

3. protected (보호)

protected 접근 제어자는 해당 메서드가 같은 패키지 내의 클래스 및 해당 클래스를 상속한 하위 클래스에서 접근 가능하도록 합니다.

protected void doSomething() {
    // 이 메서드는 같은 패키지 내 및 하위 클래스에서 호출 가능
}

 

4. default (패키지 접근)

접근 제어자를 명시하지 않는 경우, 해당 메서드는 패키지 내에서만 접근 가능하도록 합니다. 패키지 내의 다른 클래스에서 호출할 수 있지만, 다른 패키지의 클래스에서는 호출할 수 없습니다.

void doSomething() {
    // 이 메서드는 같은 패키지 내에서만 호출 가능
}

 

5. 기타 제어자와 조합

접근 제어자 외에도 static, final, synchronized 등의 다른 제어자와 함께 사용할 수 있습니다. 예를 들어, public static은 정적 메서드를 다른 클래스에서 호출 가능하게 합니다.

public static void doSomething() {
    // 이 메서드는 어디서나 호출 가능하고 정적(static)이다.
}

 

접근 제어자는 클래스의 캡슐화를 지원하며, 코드의 가시성과 보안을 관리하는 데 중요한 역할을 합니다. 메서드의 접근 제어자를 선택할 때, 해당 메서드가 어떻게 사용되어야 하는지를 고려하여 적절한 접근 제어자를 선택하는 것이 중요합니다.

 

With ChatGPT

'JAVA > 포스팅' 카테고리의 다른 글

자바 메서드 final 제어자  (0) 2023.11.07
자바 메서드 static 제어자  (0) 2023.11.07
자바 메서드 return문  (0) 2023.11.07
자바 메서드의 호출  (0) 2023.11.06
자바 메서드의 선언과 구현  (0) 2023.11.06