JAVA/포스팅

자바 private 제어자

짜집퍼박사(짜박) 2023. 11. 11. 23:56

private 제어자는 자바에서 가장 강력한 접근 제어자 중 하나로, 해당 멤버(변수, 메서드 등)를 선언한 클래스 내부에서만 접근 가능하도록 합니다. 다른 클래스나 외부에서는 접근할 수 없습니다.

 

1. private 제어자 사용 예제

 

1.1. 변수에 private 제어자 사용

// Example.java
public class Example {
    private int privateVar;

    public Example(int initialValue) {
        this.privateVar = initialValue;
    }

    public void printPrivateVar() {
        System.out.println("Private Variable: " + privateVar);
    }
}

private 제어자를 가진 변수는 해당 클래스 내부에서만 접근 가능합니다.

 

1.2. 메서드에 private 제어자 사용

// Example.java
public class Example {
    private int privateVar;

    public Example(int initialValue) {
        this.privateVar = initialValue;
    }

    private void privateMethod() {
        System.out.println("This is a private method.");
    }

    public void accessPrivateMethod() {
        privateMethod();
    }
}

private 제어자를 가진 메서드도 해당 클래스 내부에서만 호출 가능합니다.

 

1.3. 외부에서의 활용

// OutsideClass.java
public class OutsideClass {
    public static void main(String[] args) {
        Example example = new Example(42);
        // 아래 두 줄은 에러를 발생시킴
        System.out.println(example.privateVar);
        example.privateMethod();
    }
}

위의 예제에서 OutsideClass 클래스는 Example 클래스의 private 멤버에 직접 접근할 수 없습니다.

 

2. private 제어자의 특징

 

- private로 선언된 멤버는 해당 클래스 내부에서만 접근 가능합니다.
- 외부에서는 해당 클래스의 public 메서드 등을 통해 간접적으로 private 멤버에 접근할 수 있습니다.
- 캡슐화(Encapsulation)를 강화하고 객체의 상태를 보호하기 위해 사용됩니다.

 

3. 주의사항

 

- private 제어자를 사용하면 해당 멤버에 직접 접근할 수 없기 때문에 필요한 경우에만 사용하는 것이 좋습니다.
- 필요한 경우에는 public 메서드 등을 통해 제한된 접근을 허용하도록 설계합니다.
- private 제어자를 사용하여 적절한 캡슐화를 구현하면 객체의 상태를 더욱 안전하게 유지할 수 있습니다.

 

With ChatGPT

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

자바 static 제어자  (0) 2023.11.12
자바 final 제어자  (0) 2023.11.12
자바 default 제어자  (0) 2023.11.11
자바 protected 제어자  (0) 2023.11.11
자바 public 제어자  (0) 2023.11.11