티스토리 뷰

JAVA/객체(Object)

자바(JAVA) 객체(Object) 접근제한자(public, private, protected, default)

justgodoit 2024. 7. 2. 17:07

목차

    JAVA 코딩 시 가장 많이 보게 되는 public과 private의 차이점에 대해 정리, 접근제한자(또는 접근제어자)를 정리

    접근제한자

    클래스와 인터페이스를 다른 패키지에서 사용하지 못하도록 막을 필요가 있습니다.

    그리고 객체 생성을 막기 위해 생성자를 호출하지 못하게 하거나 필드나 메소드를 사용하지 못하도록 막아야 되는 경우도 있습니다.

    이때 접근 제한자를 사용할 수 있습니다.

     

    접근제한자의 종류

    1. public

    단어 뜻 그대로 외부 클래스가 자유롭게 사용할 수 있도록 한다. 어디서든 접근이 가능

    2. protected

    같은 패키지 또는 자식 클래스에서 사용할 수 있도록 한다. 상속관계일 때 접근이 가능

     

    3. private

    단어 뜻 그대로 개인적인 것으로 외부에서 사용할 수 없도록 한다. 해당 클래스에서만 접근이 가능

     

    • public 접근 제한: public 접근 제한은 모든 패키지에서 아무런 제한 없이 생성자를 호출할 수 있도록 합니다. 
       
    • protected 접근 제한: protected 접근 제한은 default 접근 제한과 마찬가지로 같은 패키지에 속하는 클래스에서 생성자를 호출할 수 있도록 합니다. 차이점으로 다른 패키지에 속한 클래스가 해당 클래스의 자식(child) 클래스라면 생성자를 호출할 수 있습니다. 
       
    • default 접근 제한: default 접근 제한은 같은 패키지에서는 아무런 제한 없이 생성자를 호출할 수 있으나, 다른 패키지에서는 생성자를 호출할 수 없도록 합니다. 
       
    • private 접근 제한: private 접근 제한은 동일한 패키지이건 다른 패키지이건 상관없이 생성자를 호출하지 못하도록 제한합니다. 오로지 클래스 내부에서만 생성자를 호출할 수 있고 객체를 만들 수 있습니다.

    'JAVA > 객체(Object)' 카테고리의 다른 글

    자바(JAVA) 객체(Object) 생성자 Pravite 변수 배열  (0) 2024.07.02