객체지향 프로그래밍의 이해

객체지향 프로그래밍은 현실에 존재하는 사물과 대상, 그리고 그에 따른 행동을 있는 그대로 실체화시키는 형태의 프로그래밍이다.

객체를 이루는 것은 데이터와 기능입니다.

프로그램상에서 바라보는 과일장수는 다음과 같은 형태이다

이처럼 객체는 하나 이상의 상태 정보(데이터)와 하나 이상의 행동(기능)으로 구성이된다.

‘과일장수’의 정의와 멤버변수의 상수화에 대한 논의

객체를 생성하기에 앞서 객체의 생성을 위한 ‘틀(mold)’을 먼저 만들어야 한다.

‘나(me)’를 표현하는 클래스의 정의

클래스의 데이터 맴버변수들 …

클래스 기반의 두 가지 객체생성 방법

ClassName objName; //일반적인 변수의 선언방식
ClassName *ptrObj = new ClassName; //동적 할당방식 (힙 할당방식)

객체간의 대화 방법(Message Passing 방법)

하나의 객체가 다른 하나의 객체에게 메시지를 전달하는 방법은 (어떠한 행위의 요구를 위한 메시지 전달) 함수호출을 기반으로 한다. 그래서 객체 지향에서는 이러하 ㄴ형태의 함수호출을 가리켜 ‘메세지 전달 (Message Passing)’ 이라 한다.

관계를 형성하는 둘 이상의 클래스

관계를 형성해서 정의하는 것은 쉽지 않다. 하지만 이는 매우 중요하다. 단순히 함수호출로 이해하면 별 것 아니지만, 메시지 전달의 관점에서 보면 이는 매우 중요하다.