티스토리 뷰
클래스
클래스는 객체를 생성할 수 있는 구조와 정보를 가지고 있는 틀이라고 정의할 수 있다.
다시말하면 붕어빵 기계로 붕어빵을 만드는 것을 생각해보자. 붕어빵 기계를 클래스라고 하면 이 기계에서 나오는 붕어빵은 객체가 된다. 즉 클래스는 붕어빵 기계처럼 하나지만, 붕어빵은 서로 다른 의미를 갖는 객체라고 이해하면 된다. 종합하면 클래스는 개념적인 의미이며, 객체는 구체적인 의미와 같다. 또한 하나의 클래스에서 생성된 객체들은 같은 속성과 같은 오퍼레이션에 대한 정의를 갖는다.
메세지
객체들은 각각 독립적으로 존재하지만, 다른 객체와 서로 상호작용 하면서 소프트웨어를 운영한다.
객체들 사이의 상호작용 수단이 바로 메세지이다. 메세지는 어떤 한 객체가 다른 객체에 특정 작업을 요청하는 신호이다.
메세지를 보내는 객체를 송신객체(Sender)라 하고, 메세지를 받아서 동작을 수행하는 객체를 수신 객체(Recevier)라 한다.
메세지 전달을 프로그래밍 방법으로 표현하면, 수신객체 이름, 수신객체가 수행할 오퍼레이션 이름, 그리고 수행할 때 전달되는 매개변수로 표현한다.
조금전 그림에서 Person이라는 클래스를 이용하여 Park과 Kim 두개의 객체를 생성했다. 두 객체의 메세지전달을 이용한 수행법을 다음과 같이 알아보자.
ex)
Park.eat("밥");
Kim.sleep(300);
이와같이 객체이름 + 수행할 오퍼레이션 이름 + 전달되는 매개변수로 표현하면 오퍼레이션에 해당하는 메세지를 해당 객체에 전달하는 것이라 할 수 있다.
'C,C++' 카테고리의 다른 글
C : C 쓰레드(Thread) 정리와 예제 1 (1) | 2015.06.16 |
---|---|
WinAPI/MFC : 핸들의 개념 CWnd와 HWND의 차이점. (1) | 2015.05.21 |
MFC 클래스간 관계 (0) | 2015.05.09 |
Invalidate, InvalidateRect, UpdateAllViews의 차이점과 사용방법 (0) | 2015.05.09 |
Device Context의 개념(GetDC / ReleaseDC) (0) | 2015.05.09 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 클라이언트
- 데이터베이스
- 디렉터리
- C/C++
- 안드로이드
- 파일
- 터미널
- 클래스
- C++
- 자료구조
- 라즈베리파이
- 액터
- 티그널
- 정렬
- 악보
- 쓰레드
- 소켓 프로그래밍
- 리눅스
- C
- 소켓
- 유즈케이스
- MFC
- socket
- 파이썬예제
- 티라노 시그널
- Sort
- 프로세스
- UML
- 스레드
- 파이썬
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함