반응형
객체
- 의사나 행위가 미치는 대상
- 구체적, 추상적 데이터 단위
객체지향
- 현실에 존재하는 사물을 그대로 모델링하여, 이들의 행위와 속성을 정의하고, 절차적이 아닌 객체가 중심이 되어 실제 사물이 동작하는 방식으로 설계하기 시작
- 사물에 대해서는 객체(Object)라고 부르며, 해당 사물이 하는 행위를 Method로 정의하고 해당 사물이 가지는 속성을 변수 (Variable)라고 정의 한다.
객체의 3가지 요소
- 상태 유지 (객체의 상태)
- 객체는 상태정보를 저장하고, 유지되어져야 하며 이러한 속성(Variable)은 변수로 정의 되어져야 한다. 이러한 속성값이 바뀜으로 인하여, 객체의 상태가 변경 될 수 있어야 한다.
- 기능 제공 (객체의 책임)
- 객체는 기능을 제공해야 한다. 이 부분은 Method의 제공으로 이루어진다.
- 이 부분은 캡슐화와 연관이 있으며, 외부로부터 직접 속성에 접근하여 변경하는 것이 아닌 개체가 제공하는 Method로 기능이 제공되어져야 한다.
- 고유 식별자 제공 (객체의 유일성)
- 각각의 객체는 고유한 식별자를 가져야 한다.
- 예를 들면 카드번호, 계죄번호, 자동차 번호와 같은 속성을 통해서 각각 고유한 값을 줄 수 있으며 이는 이후 DB에서 Unique Key, 또는 Primary Key로도 작성이 가능하다
물리 객체와 개념 객체
- 물리 객체: 실제로 사물이 존재하며, 이를 클래스로 정의한 객체를 의미
- 개념 객체: 웹 시스템에서 Service에 해당되며, 이는 business logic을 처리하는 부분을 의미
- Business logic: 여러 객체를 서로 상호작용 하도록 하며, 객체가 제공하는 오퍼레이션 method를 통하여 객체의 속성을 변경 시킨다.
객체 지향 프로그램 구현 방법
- 객체를 정의
- 각 객체가 제공하는 기능 구현
- 각 객체가 제공하는 기능들 간의 소통(메세지 전달)을 통하여 객체간의 협력을 구현
객체지향의 특성
- 추상화, 상속, 은닉, 재사용 인터페이스, 캡슐화 등
반응형
'언어 > JAVA' 카테고리의 다른 글
인스턴스, 힙 메모리, 용어 정리 (0) | 2021.04.12 |
---|---|
메서드(함수) (0) | 2021.04.12 |
중간에 멈추는 break문, 무시하고 계속 진행하는 continue문 (0) | 2021.04.11 |
반복문 (0) | 2021.04.11 |
조건문 (0) | 2021.04.10 |