반응형
728x170
객체 지향 프로그래밍에서는 객체 외부에서 직접적으로 접근하는 것을 막는다. 왜냐하면 객체의 데이터를 외부에서 마음대로 다룰 경우 무결성이 깨질 수 있기 때문이다.
때문에 객체 지향 프로그래밍에서는 메소드를 통해서 데이터를 변경하는 방법을 선호한다. 데이터는 외부에서 접근할 수 없도록 막고 메소드를 공개해서 외부에서 데이터에 접근하게 하는 방법이다.
이러한 역할을 담당하는 것이 get, set메소드이다(getter, setter 라고도 부른다)
setter는 값을 저장(셋팅)하게 유도하는 메소드이다.
반대로 getter는 값을 return받게 해주는 메소드이다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | class Car{ private int speed; private boolean stop; public int getSpeed() { return speed; } public void setSpeed(int speed) { if(speed < 0) { this.speed = 0; return; } else { this.speed = speed; } } public boolean getIsStop() { return stop; } public void setStop(boolean stop) { this.stop = stop; this.speed = 0; } } class CarExample { public void aa() { Car c = new Car(); c.setSpeed(100); } } Colored by Color Scripter |
위 소스는 get, set 메소드를 사용한 예제이다.
speed와 stop은 private 접근제한 때문에 외부에서 접근을 하지 못한다.
이 데이터에 접근 하려면 메소드를 이용해서 접근해야 하는 것을 보여준다
반응형
그리드형
'java' 카테고리의 다른 글
자바 클래스 자동 타입 변환 및 다형성 (0) | 2017.08.16 |
---|---|
자바 상속과 오버라이딩, super (0) | 2017.08.16 |
자바 접근 제한자(publlic, private, protected, default) (0) | 2017.08.14 |
자바 import (0) | 2017.08.14 |
자바 싱글톤 (0) | 2017.08.14 |