인캡슐레이션 ( Encapsulation ) - 캡슐화 : 내부의 데이터를 보호
/** * 인캡슐레이션 ( Encapsulation ) - 캡슐화 : 내부의 데이터를 보호 * */ public class Encapsulation { public static void main(String[] args) { Time t1 = new Time(); // t1.setHour(-8); // t1.setMinute(590); // t1.setSecond(-110); System.out.println(t1.getHour() + " : " + t1.getMinute() + " : " + t1.getSecond()); // //번외 // int num = 8;// 10진수 처리 // num = 017; // 8진수 처리 // num = 0xf1; // 16진수 처리 // System.out.println(num); // } // end of main } // end of class class Time { private int hour; private int minute; private int second; private boolean open; // getter/setter 메서드 // setter : 값을 설정 ( 저장 ) // private로 설정해주면 쓰기 X 읽기 O 한마디로 읽기 전용. 사용자가 변경 불가. // getter : 값을 참조 ( 읽기 ) public boolean isOpen(){ // boolean 타입일 경우 return open; } public int getHour() { return hour; } private void setHour(int hour) { // 범위에 벗어나는 값은 저장하지 않기 if (hour < 0 || hour > 23) { System.out.println("시간 범위를 벗어났습니다."); return; } this.hour = hour; } public int getMinute() { return minute; } private void setMinute(int minute) { if (minute < 0 || minute > 59) { System.out.println("분 범위를 벗어났습니다."); return; } this.minute = minute; } public int getSecond() { return second; } private void setSecond(int second) { if (second < 0 || second > 59) { System.out.println("초 범위를 벗어났습니다."); return; } this.second = second; } }
반응형
'Java' 카테고리의 다른 글
Java 다형성 ( polymorphism ) 의 예제(1) (0) | 2017.07.12 |
---|---|
Java 다형성 ( Polymorphism ) (0) | 2017.07.12 |
Java 간단한 Singleton 예제 (0) | 2017.07.12 |
Java instanceof란? (0) | 2017.07.12 |
Java 접근제어자 (0) | 2017.07.11 |
댓글