LANG/C++

[C++]03-3.객체지향 프로그래밍의 이해

혀니리리 2023. 5. 12. 14:28
728x90

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

현실에 존재하는 사물, 대상, 그에 따른 행동을 있는 그대로 실체화시키는 형태의 프로그래밍

"과일장수에게 2000원을 주고 두 개의 사과를 구매했다." (굵은 글씨가 객체)

 

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

 

과일장수의 관점을 '과일 판매'에 두면

1) 과일장수는 과일을 팜  -> 행동(behavior) 

2)과일장수는 사과 20개, 오렌지 10개를 보유하고 있음 -> 상태(state)

3)과일장수의 과일판매 수익은 현재까지 5만원임 -> 상태(state)

 

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

상태정보: 변수 통해서 표현/ 행동 : 함수 통해서 표현

 

*보유하고 있는 사과의 수 -> int numOfApples;

*판매 수익 -> int myMoney;

 

과일의 판매

int SaleApples(int money) //사과 구매액이 함수의 인자로 전달

{

   int num = money / 1000; //사과가 개당 1000원이라고 가정

   numOfApples -= num; //사과의 수가 줄어들고,

   myMoney += money; //판매 수익이 발생

   return num; //실제 구매가 발생한 사과의 수 반환

}

 

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

어떤 객체가 다른 객체한테 값을 달라고 하는 것

ex) numOfApples += seller.SalesApples(money);

728x90