SeouliteLab

[Java/자바] 접근 제어자(public, private, protected, default) 이해하기 본문

프로그래밍

[Java/자바] 접근 제어자(public, private, protected, default) 이해하기

Seoulite Lab 2024. 3. 21. 21:56

자바에서는 클래스, 변수, 메소드 등의 접근을 제어하기 위해 접근 제어자를 사용합니다. public, private, protected, 그리고 default라는 네 가지 접근 제어자가 있으며, 각각의 역할과 사용법을 자세히 알아봅시다.

접근 제어자 설명

접근 제어자 이해하기

접근 제어자는 클래스, 변수, 메소드 등의 접근을 제한하는 키워드입니다. 자바에서는 다음 네 가지 접근 제어자를 사용합니다.

  • public: 어디서든 접근 가능한 제한자
  • private: 같은 클래스 내에서만 접근 가능한 제한자
  • protected: 같은 패키지 내에서 또는 상속받은 클래스에서 접근 가능한 제한자
  • default (package-private): 같은 패키지 내에서만 접근 가능한 제한자 (접근 제어자를 명시하지 않은 경우 기본값)

예제 1: public 접근 제어자

디렉토리: src/main/java/com/example/accessmodifiers

파일명: PublicExample.java

public class PublicExample {
    // public으로 선언된 변수
    public String name;

    // public으로 선언된 메소드
    public void display() {
        System.out.println("안녕하세요, 저는 public입니다!");
    }
}

예제 2: private 접근 제어자

디렉토리: src/main/java/com/example/accessmodifiers

파일명: PrivateExample.java

public class PrivateExample {
    // private으로 선언된 변수
    private int number;

    // private으로 선언된 메소드
    private void display() {
        System.out.println("안녕하세요, 저는 private입니다!");
    }
}

예제 3: protected 접근 제어자

디렉토리: src/main/java/com/example/accessmodifiers

파일명: ProtectedExample.java

public class ProtectedExample {
    // protected로 선언된 변수
    protected String message;

    // protected로 선언된 메소드
    protected void display() {
        System.out.println("안녕하세요, 저는 protected입니다!");
    }
}

예제 4: default (package-private) 접근 제어자

디렉토리: src/main/java/com/example/accessmodifiers

파일명: DefaultExample.java

class DefaultExample {
    // default로 선언된 변수
    String color;

    // default로 선언된 메소드
    void display() {
        System.out.println("안녕하세요, 저는 default입니다!");
    }
}