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

 

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;

      }

}

동일한 클래스로부터 객체를 여러개 만든다

이 여러 개의 객체는 엄연히 다른 객체(메모리상에 별도로 존재)

static 키워드가 붙은 변수는 서로 데이터를 공유하여 쓸 수 있다.

1. 패키지 이름은 패키지에 속해 있는 클스가 최대한 다른 클래스와 중복되는 것을 방지하도록 만든다.

2. 패키지 이름은 일반적으로 도메인을 거꾸로 이용한다.

3. 개발 중에 패키지의 이름과 구조는 변경될 수 있다.

4. 패키지 이름만 보고도 해당 패키지 안에 있는 클래스가 어떤 속성과 기능을 가지고 있는 예상이 될 수 있도록 이름을 만든다.

+ Recent posts