Java

Getter and Setter

Alledy 2019. 4. 30. 17:28

Getter and Setter

  • 예시 1

    class Member4 {
    	int i;
    	String name;
    	String account;
    	String passwd;
    	private int birthyear;
    	
    	void setBirthyear(int birthyear) {
            if(birthyear < 0) {
              	return;
            }
            this.birthyear = birthyear;
        }
        int getBirthyear() {
         	return birthyear;  
        }  
    }
    
    

 

  • 예시 2

    public class Time {
        private int hour;
        private int minute;
        private float second;
        
        // Getter 
        public int getHour() { return hour; }
        public int getMinute() { return minute; }
        public float getSecond() { return second; }
        
        // Setter
        public void setHour(int h) {
            if(h < 0 || h > 23) return; // void일 때 return은 메서드 탈출
            hour = h;
        }
        
        public void setMinutes(int m) {
            if(m < 0 || m > 59) return;
            minute = m;
        }
        
        public void setSecond(int s) {
            if(s < 0.0f || s > 59.99f ) return;
            second = s;
        }
    }
    

    제어자를 이용해서 변수 값을 직접 변경하지 못하게 하고 메서드를 통해서 값을 변경하도록 했다. 값을 변경할 때에는 유효성 조건(if문)을 통과해야 변경할 수 있다.