- 객체가 가지고 있는 데이터를 외부로부터 변질되지 않게 보호하는 방법

 

public - 외부로부터 데이터를 쉽게 입출력하여 외부로부터 데이터가 변질가능

private - 외부로부터 데이터를 보호

 

데이터를 보호하기 위해 private로 설정하였는데 외부에서 접근할 수 없고,

그 데이터는 한번 설정이 초기화되면 외부에서 접근할 수가 없다.

그렇기 때문에 메소드를 통해 접근할 수 있도록 setter, getter를 사용한다.

ex) 이름은 영구적으로 변경할 수 없다 라고 한다면 gettr, setter에서 setter를 모두 지우면 된다.

 

// 중요

멤버 변수는 private이고 변경하려는 setter는 public

public void setExample () {

      this.example = example;

}

라고 한다면 어차피 setter를 public으로 사용하는데 뭐하러 멤버변수에서 private으로 했는지 의문이 들 수 있지만

이는 안전장치라고 보면 된다.

 

ex) 급여를 줄때 최저임금 이하로는 줄 수 없는 프로그램을 만들 때 

- 최저임금 이하로 줬을때 알람이 울린다던지

-  public void setExample () {

      if( example > 50) {

      this.example = example;

      }

}

+ Recent posts