【大話設計模式】——淺談設計模式基礎
初學設計模式給我最大的感受是:人類真是偉大啊!單單是設計模式的基礎課程就讓我感受到了強烈的生活氣息。個人感覺《大話設計模式》這本書寫的真好,讓貌似很晦澀難懂的設計模式變的生活化,趣味化。
下面淺談一下對設計模式基礎的理解,如果理解的不好,還請大家指正!
首先設計模式是對物件導向的更專業的詮釋,物件導向的三大基本特徵是繼承、封裝、多型。
繼承:
1.子類繼承父類非private的屬性和功能。
個人理解:有幾個老婆是私有屬性,小明他爸有好幾個老婆,小明呢,恰好趕上了國家頒佈法律一夫一妻 制(怎麼這麼衰呢~),那他是不能繼承他老爹的私有屬性的。他老爹在他的年代(類)裡面 是合法的(可呼叫私有變數)。
2.子類可擴充套件父類沒有的功能。
個人理解:原始人不會做飯,現在有了烹飪。
3.子類可以以自己的方式實現父類的功能
個人理解:以前取火是鑽木取火,現取火可以用打火機了。
多型:
表示不同的物件可執行相同的動作,但要通過它們自己的實現程式碼來執行。
個人理解:條條大路通羅馬。
通過什麼來實現多型呢?比如方法過載,抽象類,集合,泛型。
方法過載:提供了建立同名的多個方法的能力,但這些方法需要使用不同的引數型別。
封裝:
每個物件都包含它能進行操作所需要的所有資訊,這個特性成為封裝,因此物件不必依賴其他物件來完成自己的操作。
封裝主要涉及到的知識點是類與例項、屬性與修飾符、構造方法、介面、委託。
介面:把隱式公共方法和屬性組合起來,以封裝特定功能的一個集合。(行為的抽象)
委託:對函式的封裝,是一種引用方法的型別。(把一堆方法打包)
VS
區分類和介面:
- 類是物件的抽象;抽象類(整體)是對類的抽象;介面(區域性)是對行為的抽象。
- 如果行為跨越不同類的物件,可使用介面;對於一些相似的類物件,用繼承抽象類。
- 從設計角度,抽象類是從子類中發現公共的東西,泛化出父類,然後子類繼承父類,而介面是根本不知子類的存在,方法如何實現還不確認,預先定義。
區分抽象方法和虛方法:
1.關鍵字不同:虛方法是vritual,抽象方法是abstract
2. 虛方法可以有方法體,抽象方法沒有方法體。
3.虛方法可以定義在抽象類和非抽象類中,可以寫在父類中,在子類別重寫,定義虛方法必須實現;抽象方法必須定義在抽象類中,必須寫在父類中,在子類中必須被重寫,在定義抽象方法時不能實現方法。
區分抽象類和介面:
學習心得:
1.繼承、封裝給了我一種大道至簡的感覺;多型讓我體會到了生活的多姿多彩。
2.繼承、封裝、多型跟我們推崇的學習方法也很相似。把重複性的東西加以歸納和總結,將知識變少,不同讓我們更好的瞭解這個事物。
3.我們需要總結共性的東西,免去了很多無用功;體會個性的東西,解決一個問題可以多角度的思考,這樣才有助於鍛鍊我們的發散思維,提高我們解決未知問題的能力。
相關文章
- 【Java基礎】淺談常見設計模式Java設計模式
- 大話設計模式設計模式
- 大話設計模式—命令模式設計模式
- 【大話設計模式】——代理模式設計模式
- 【大話設計模式】——策略模式設計模式
- 淺談設計模式——工廠模式設計模式
- 淺談設計模式——單例模式設計模式單例
- 【設計模式】設計模式(一)-- 大話設計模式讀書筆記設計模式筆記
- 淺談23種設計模式之單例設計模式設計模式單例
- 大話設計模式:工廠模式設計模式
- 【大話設計模式】—— 原型模式設計模式原型
- 【大話設計模式】——裝飾模式設計模式
- 【大話設計模式】—— 模板方法模式設計模式
- 大話設計模式—組合模式設計模式
- 大話設計模式—橋接模式設計模式橋接
- 淺談設計模式之觀察者模式設計模式
- 淺談學習設計模式設計模式
- 大話設計模式:抽象工廠模式設計模式抽象
- 【大話設計模式】—— 工廠方法模式設計模式
- 大話設計模式—備忘錄模式設計模式
- 讀《大話設計模式》和《head first 設計模式》心得設計模式
- 1.1 《硬啃設計模式》 第1章 大話設計模式設計模式
- 淺談java之設計模式(1)Java設計模式
- java 設計模式基礎Java設計模式
- 大話設計模式:今天你設計了嗎?設計模式
- Unity【話大】設計模式之狀態模式Unity設計模式
- 大話設計模式:簡單工廠模式設計模式
- 【大話設計模式】——簡單工廠模式設計模式
- 大話 PHP 設計模式--建立型PHP設計模式
- 大話設計模式C++.pdf設計模式C++
- 【淺談設計模式(三)】讓你一分鐘讀懂設計模式設計模式
- [淺談設計模式(三)] 讓你一分鐘讀懂設計模式設計模式
- 【淺談設計模式(二)】讓你一分鐘讀懂設計模式設計模式
- [淺談設計模式(二)] 讓你一分鐘讀懂設計模式設計模式
- [淺談設計模式(一)] 讓你一分鐘讀懂設計模式設計模式
- 淺識JAVA設計模式——單例設計模式Java設計模式單例
- Java基礎篇--設計模式Java設計模式
- 談談設計模式 —— Iterator設計模式