본문 바로가기

자바

자바 접근 제어자

1. 접근 제어자란?

자바에서는 접근 제어자(Access Modifiers)를 사용하여 클래스, 멤버 변수, 메서드 등의 접근 범위를 제한할 수 있다.

객체 지향 프로그래밍의 캡슐화와 정보 은닉을 지원하며, 코드의 가독성과 유지보수성을 향상시키는 장점이 있다.

 

2. 접근 제어자의 종류

종류는 아래와 같이 4가지이다.

 

           접근 허용 : 0 / 제한 : x

                                                                                                                     출처 - https://hajoung56.tistory.com/33

 

 

1) private : 같은 클래스 내에서만 접근 가능

2) default : 같은 패키지 내에서만 접근 가능

3) protected : 같은 패키지 내에서, 그리고 다른 패키지의 자손 클래스에서 접근 가능

4) public : 접근 제한이 전혀 없다.

 

3. 접근 제한자 사용 예시

public class MyClass {  // public 클래스

    private int privateVar;  // private 멤버 변수

    protected void protectedMethod() {  // protected 메서드
    }

    void defaultMethod() {  // default 접근 제어자가 적용된 메서드
    }

    public void publicMethod() {  // public 메서드
    }
}

위의 코드에서 MyClass 클래스는 public으로 선언되어 다른 클래스에서 접근할 수 있다.

privateVar 멤버 변수는 private으로 선언되어 클래스 외부에서 직접 접근할 수 없다.

protectedMethod() 메서드는 protected로 선언되어 같은 패키지 내의 클래스나 상속 관계에 있는 클래스에서 접근할 수 있습니다.

defaultMethod() 메서드는 접근 제어자를 명시적으로 지정하지 않아 기본적으로 default 접근 제어자가 적용되어 같은 패키지 내에서만 접근할 수 있다.

publicMethod() 메서드는 public으로 선언되어 어떤 클래스에서든 접근할 수 있다.

접근 제어자를 사용하여 클래스와 멤버의 접근을 제한함으로써 개발자가 의도하지 못한 오작동을 방지할 수 있다.

'자바' 카테고리의 다른 글

자바 중첩 클래스 ( Nested Class )  (0) 2023.07.18
자바 final  (0) 2023.07.16
자바 오버로딩과 오버라이딩  (0) 2023.07.14
자바 OOP ( 객체 지향 프로그래밍 )  (0) 2023.07.14
자바 Object 클래스와 다형성  (0) 2023.07.14