Java 캡슐화

이정민·2021년 10월 18일
0

접근 제어자를 이용한 캡슐화

접근 제어자를 사용하는 이유
1. 외부로부터 데이터를 보호하기 위해서
2. 외부에는 불필요한, 내부적으로만 사용되는, 부분을 감추기 위해서

class Time {
   private int hour;
   private int minute;
   private int second;
   
   Time(int hour, int minute, int second) {
      setHour(hour);
      setMinute(minute);
      setSecond(second);
   }
   
   public int getHour() { return hour; }
   
   public void setHour(int hour) {
      if (hour < 0 || hour > 23) return;
      this.hour = hour;
   }
   
   // 중간 생략 ....
   
   public String toString() {
      return hour + ":" + minute + ":" + second;
   }
}

---------------------------------------------

public static void main(String[] args) {
   Time t = new Time(12, 35, 30);
   // System.out.println(t.toString());
   System.out.println(t);
   // t.hour = 13; 에러!!!
   
   // 현재시간보다 1시간 후로 변경한다.
   t.setHour(t.getHour() + 1);
   System.out.println(t);
profile
안녕하세요.

0개의 댓글