25.C++:最通俗的讲解,什么是面向过程?什么是面向对象?
網(wǎng)上關(guān)于這兩個(gè)的回答真的很多,但是都有一個(gè)共同特點(diǎn):------------不容易懂。我今天就簡(jiǎn)單通俗的說(shuō)一下(當(dāng)然,如果你要非常深入的了解,這篇不適合你。如果你只是為了了解什么是面向過程和面向?qū)ο?#xff0c;怎么面對(duì)考試,面對(duì)面試,怎么和別人說(shuō)兩者區(qū)別,看我下面幾段話夠了。)
先來(lái)兩小段通俗解釋面向過程(Procedure Oriented 簡(jiǎn)稱PO :像C語(yǔ)言):???
看名字它是注重過程的。當(dāng)解決一個(gè)問題的時(shí)候,面向過程會(huì)把事情拆分成: 一個(gè)個(gè)函數(shù)和數(shù)據(jù)(用于方法的參數(shù)) 。然后按照一定的順序,執(zhí)行完這些方法(每個(gè)方法看作一個(gè)個(gè)過程),等方法執(zhí)行完了,事情就搞定了。
面向?qū)ο?#xff08;Object Oriented簡(jiǎn)稱OO :像C++,JAVA等語(yǔ)言):???
看名字它是注重對(duì)象的。當(dāng)解決一個(gè)問題的時(shí)候,面向?qū)ο髸?huì)把事物抽象成對(duì)象的概念,就是說(shuō)這個(gè)問題里面有哪些對(duì)象,然后給對(duì)象賦一些屬性和方法,然后讓每個(gè)對(duì)象去執(zhí)行自己的方法,問題得到解決。
舉個(gè)栗子:
冰箱里面放有臟衣服,怎么洗干凈???
面向過程:???????????????????
1 執(zhí)行加洗衣粉方法;?2 執(zhí)行加水方法;?? 3 執(zhí)行洗衣服方法;??4 執(zhí)行清洗方法;???? 5 執(zhí)行烘干方法;----------解決問題??????
拆成一個(gè)個(gè)方法,是沒有對(duì)象去調(diào)用的。 通過一個(gè)個(gè)方法的執(zhí)行解決問題。??
面向?qū)ο?#xff1a;
我先搞個(gè)洗衣機(jī)對(duì)象和人對(duì)象???
洗衣機(jī): 加入一些屬性和方法? 洗衣服方法? 清洗方法? 烘干方法??????
人:加洗衣粉方法? 加水方法??
然后 人.加洗衣粉 人.加水?? 洗衣機(jī).洗衣服 ? 洗衣機(jī).清洗?? 洗衣機(jī).烘干----------同樣解決問題???
先抽象出對(duì)象,然后用對(duì)象執(zhí)行方法的方式解決問題。
然后在來(lái)一個(gè)我以前知乎看到的例子? :?
男女親密例子????? man?? gril???
面向過程:??????? make_love(man,gril)? ---------解決問題????? 拆成一個(gè)動(dòng)作,把數(shù)據(jù)丟進(jìn)去
面向?qū)ο?#xff1a;??????? man.make_love(gril)? 或者 gril.make_love(man) -----解決問題??? 抽象出對(duì)象,對(duì)象執(zhí)行動(dòng)作 。
當(dāng)然,你面試的時(shí)候,你不要做make_love?? ....你可以說(shuō)是打牌 。??
面向過程就是??? 打牌 (你,我,他)
面向?qū)ο缶褪? 我.打牌(你,他) or 你.打牌(我,他)? or 他.打牌(我,你)
我覺得算是很通俗啦,希望對(duì)大家有用。
總結(jié)
以上是生活随笔為你收集整理的25.C++:最通俗的讲解,什么是面向过程?什么是面向对象?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 11MYSQL:慢查询以及优化步骤
- 下一篇: 26.智能指针和动态内存
