我看面向对象
? ? ? 已經(jīng)面向?qū)ο缶幊潭嗄炅?#xff0c;漸漸地對(duì)面向?qū)ο笥辛嗽絹碓缴畹捏w會(huì),下面談?wù)勎覍?duì)面向?qū)ο蟮淖疽?#xff1a;)
? ? ? 面向?qū)ο笕筇匦?#xff1a;封裝、繼承、多態(tài)。
? ? ? 首先是封裝,我覺得封裝是面向?qū)ο蟮幕A(chǔ),封裝讓各種相關(guān)的數(shù)據(jù)和方法形成一個(gè)有機(jī)的整體(對(duì)象)。各種對(duì)象由于組成元素(字段、屬性)和行為(方法)的不同而不同,這樣世界才豐富多彩。封裝讓對(duì)象內(nèi)部與外界有了明顯的”界”。再談?wù)?span style="color:#ff0000;">封裝的粒度,完全面向?qū)ο缶幊淌遣豢赡艿幕蚝懿滑F(xiàn)實(shí)的,并且沒必要,面向?qū)ο蟛⒉皇菍?duì)現(xiàn)實(shí)的模擬,需要根據(jù)項(xiàng)目的情況來調(diào)整對(duì)象的粒度,比如:現(xiàn)在我們考察一個(gè)地區(qū)有多少棟建筑,就沒必要考慮建筑的形狀,建筑的層數(shù),建筑里有多少房間等。我覺得把握適當(dāng)?shù)牧6纫矎囊环矫娣从硞€(gè)人抽象能力。
? ? ? 其次是繼承,繼承是面向?qū)ο笾蓄惻c類(接口)之間的關(guān)系,我覺得用生物進(jìn)化論類比繼承是很恰當(dāng)?shù)?#xff0c;繼承讓對(duì)象衍生出更具多樣性的對(duì)象(多態(tài))。繼承的出發(fā)點(diǎn)是好的,然而在編程過程中繼承的深度是需要謹(jǐn)慎考慮,繼承得太深了容易陷入模擬現(xiàn)實(shí)的圈子里。Adapter設(shè)計(jì)模式,把繼承的深度降低了,同時(shí)設(shè)計(jì)帶來了更大的靈活性。依賴抽象(或基類),不要依賴具體。
? ? ? 最后是多態(tài),我覺的多態(tài)可以從宏觀和微觀兩個(gè)方面來看。從宏觀來看,類的泛化是一種多態(tài)的表現(xiàn)形式,派生類擴(kuò)展了基類,基類下的派生類共性于基類,特性于擴(kuò)展;微觀上看,就要深入類的內(nèi)部了,重載反映了行為上的多種形態(tài),方法參數(shù)的抽象性我覺得也是多態(tài)的體現(xiàn)。
? ? ?封裝 — 造“物”,繼承 — 進(jìn)化,多態(tài) — 求同存異。
? ? ?以上是本人對(duì)面向?qū)ο笠娊?#xff0c;不喜勿噴,因?yàn)槎鄳B(tài):)
?
轉(zhuǎn)載于:https://www.cnblogs.com/oneday/p/3615667.html
總結(jié)
- 上一篇: 分期乐几点可以抢额度?放款时间点介绍
- 下一篇: 高并发的理解和使用场景-----特意区别