객체(Object)
객체는 속성과 행위라는 두 가지 용어로 정의된다.
사람은 눈동자 색, 나이, 키와 같은 속성을 가지고 있다.
또한 걷기, 말하기, 숨쉬기 등의 행위를 한다.
객체(object)란 데이터와 행위를 모두 가지고 있는 실체(엔티티, entity)이다.
- OO(Object-Oriented)와 절차의 차이점
OO 설계에서 속성과 행위는 단일 객체에 포함되어 있는 반면 절차 또는 구조적 설계에서는 속성과 행위가 분리되어 있는 것이 일반적이다.
- 데이터 은닉
OO 용어에서 데이터는 속성이라고 하고, 행위는 메서드라고 한다. 특정 속성 및/또는 메서드에 대한 액세스를 제한하는 것을 데이터 은닉(data hiding)이라고 한다.
객체란 정확히 무엇인가?
객체는 OO 프로그램을 구성한느 블록이다. OO 기술을 사용한느 프로그램은 기본적으로 객체 집합이다. 예시를 위해 회사 시스템에 회사 직원을 나타내는 객체들이 포함된다고 가정하자. 이런 각각의 객체는 다음 단락에서 설명하는 데이터와 행위로 구성된다.
Getter와 Setter
getter와 setter 개념은 데이터 은닉의 개념을 뒷받침한다. 다른 객체가 직접 다른 객체 내에 있는 데이터를 이용해서는 안되기 때문에 getter와 setter는 객체 데이터에 대한 제한된 액세스를 제공한다. getter와 setter는 각각 접근자(accessor) 메서드와 변경쟈(mutator) 메서드라고 불릴 때도 있다.
from 객체지향적으로 생각하라!




