從開始學習程式設計,物件導向就是我們的目標,一直在學。一直在用,一直在被推翻,也一直再被又一次建立,對「oo」的認識,總是在邊緣徘徊。
儘管說學習是個不斷重複,盲人摸象的過程,但是,為什麼我們用了兩年的時間,還是僅僅是在大象腿周圍轉圈?
個人情況:
1、物件導向家族的成員都認識,僅僅是非常少「主動和其打交道」。
總是習慣於一種固定的程式設計習慣,使用熟悉的方法去思考,不想去接觸,去探索「不熟悉」的,沒有去主動拿來用。而「oo」確確實實是「你用或者不用,我就在那裡」,因此我們和「oo」是相對精巧的觀望。
2、為了用而用,不知其所以然
程式設計中。有泛型,有集合,了解繼承,多型。也用了,可是沒有深入的思考。這些東西給我們帶來了什麼?
沒有對照,就不會看到巨人的偉大,當然就不會站在巨人的肩膀上去思考。
3、沒有擴充套件
使用集合,泛型,體會到了一點優點,就沾沾自喜,沒有思考在這個層面上的其它情況,或者更大層面上,類似的情況,可不能夠使用,所以就停留在了「oo」的表皮。無法深入。
下圖是在聽課時做的筆記。
1、物件導向中僅僅有兩樣東西:類,物件。前者是「虛」
,僅僅有被例項化了,才是我們須要的「實」。
2、物件導向中的不論什麼東西的表現形式,歸根結底都是通過「類」表現出來的(介面也是一種類)。
3、定義類的同一時候就是在「封裝」,僅僅是封裝的好壞不同;在不斷的抽象,實現/繼承的過程中,就是多型的體現;
4、collection不要翻譯成「集合」,就是collection。
有些東西翻譯過來懊悔影響理解。從本身屬性的角度來說collection包括:list,map,set ,容器;不要讓「list=集合」存在腦中。
對於這張圖。都是「oo」的家庭成員。都被我們熟知。不做解釋,也說不清。如今寫出來總是認為膚淺,貼圖的目的:徵集集體的思想,仁者見仁,留下您寶貴的「思想」!
學習物件導向之物件導向的術語
類類作為設計藍圖來建立物件的 段,它描述了物件的特徵 該物件具有什麼樣的屬性,怎樣使用物件完成一些任務,他對事件進行怎樣的響應等!物件物件是類的乙個例項,通常通過呼叫類的乙個建構函式來建立它!方法方法是在類中定義的函式,一般而言,乙個方法描述了物件可以執行的乙個操作www.cppcns.com!屬性...
物件導向 物件的組合
組合 乙個類的例項可以當做引數傳給另乙個類的例項 class school def init self,name,address self.name name self.address address class course def init self,name,price,outline,sch...
物件導向 物件的轉型
為什麼需要強制轉換型別?引用變數只能呼叫它編譯型別的方法,不能呼叫它執行型別的方法,所以就需要型別的強制轉換。1 乙個父類的引用型別變數可以指向其子類的物件 2 乙個父類的引用不可以訪問其子類物件的新增加的成員 屬性和方法 3 可以使用引用變數instanceof 類名 來判斷引用變數所指向的物件是...