總是在總是要等到睡覺前
才知道功課只做了一點點。
總是要等到考試後
才知道該念的書都沒有念。總是要等到學下乙個專案的時候才知道上乙個專案根本就沒有學完。。。。學到設計模式的時候,才明白師傅當時的苦心。。原來基礎打不好只能在後邊的學習過程中費時間。。。不過還好的是我們還有這個機會不斷的學習。不斷地在後來的學習中反覆碰到那些我們模稜兩可的知識。。。初學設計模式,就先搞清楚一些基礎的東西吧。儘管這些公尺老師也都說過,反覆的學習中對它們的了解越來越深入。
首先從後邊的附錄中學到了一些概念性的東西。什麼類,物件,構造方法,方法過載之類的。現在我就對這些概念一一解釋。
【構造方法】所謂的構造方法就是一種特殊的方法。它是乙個與類同名且沒有返回值型別的方法。物件的建立就是靠構造方法來完成。它的功能主要是完成物件的初始化。當類例項化乙個物件時,會自動呼叫乙個構造方法。其次,構造方法的名字必須與定義他的類名完全相同,沒有返回型別,甚至連void也沒有。.類中必定有構造方法,若不寫,系統自動新增無參構造方法。比如說,cat cat =new cat(); 中,new後邊的cat(),就是系統預設賦予的構造方法。空的構造方法什麼事情也不做,只是為了讓我們能夠很順利的例項化而已。。說白了,建構函式的作用就是為了當我們抽象出乙個類的時候能夠例項化出物件。。。。它是例項化的一種方法。。
【方法過載】「方法過載提供了建立同名的多個方法的能力。。但是這些方法需使用不同的引數型別。。需要注意的是,不勁構造方法可以過載,普通方法也是可以的。。。方法過載是讓類以統一的方式處理不同型別資料的一種手段。就是在類中可以建立多個方法,它們具有相同的名字,但具有不同的引數和不同的定義。呼叫方法時通過傳遞給它們的不同個數和型別的引數來決定具體使用哪個方法。就像是我們」賣東西「這個動作,做生意的時候我們要根據不同的季節**不一樣的商品,而不同的商品就是」賣東西「這個動作中不同的引數,冬天和夏天賣的這個方法是一樣的。。方法過載就是這個道理。。。還有比如課本中舉的例子,」叫「是我們抽象出來的乙個方法,而不同的動物叫聲不一樣。這是我們可以通過改變方法中的引數來利用同乙個方法使不同的動物發出不同的叫聲。這就是方法過載的過程。。。
【封裝、繼承】封裝就很容易理解了。每個物件都包含它能進行操作所需要的所有資訊,這個特徵稱為封裝,因此物件不必要依賴其它物件來完成自己的操作。。用通俗的話來理解一遍再去理解上邊的話就會理解的更加深刻一點,就像是以前比較落後的時候,大家看個電影都是要集體的去看村子中放上乙個大螢幕,還有乙個投影儀,還需要有現成的光碟,還需要有專門的人去給大家放。這種看電影的方式就依賴的東西比較多,而現在一台電視機就全部搞定了,電視機自身包含了螢幕,內部又有一些可以讓影響顯示在螢幕中的零件,還有各種功能的零件,是的我們看電視的時候依賴的事物比較少。這就做到了很好的封裝性。。封裝的好處在於減少了物件之間的耦合性,當我們需要做一些改動的時候比較容易修改,容易維護,耦合性大的要修改的地方就要遠遠大於耦合性低的情況。。。。繼承,也就更好理解了。比如說學生是乙個父類,那麼小學生、中學生、高中生、大學生便都可以稱之為學生的子類,即,小學生、中學生、大學生都繼承了學生的屬性和方法。他們都有學生的性質。子類除了繼承父類的屬性之外還可以有一些自己的屬性和方法。比如小鳥繼承了動物這個類,但是小鳥會飛這個功能不是所有的動物的性質。。總結來說三句話;一、子類擁有父類非private的屬性和功能。二、子類具有自己的屬性和功能。三、子類還可以以自己的方式實現父類的功能(方法重寫)。。。
【多型】表示不同的物件可以執行相同的動作,但是要通過它們自己的實現**來執行,通過繼承實現的不同物件呼叫相同的方法,表現出不同的行為,稱之為多型。。。多型主要是通過過載來實現的。公尺老師總是給我們舉那個蘋果、香蕉、橘子的例子。這種觀念早已深入人心。一雙父母生出的孩子雖然都繼承了父母雙方的基因,但是孩子的長相都各不相同。這就是多型的概念。。。
【總結】還有很多概念性的東西要深刻理解。。。從基礎開始學習。。。。萬丈高樓平地起。。加油。
大話設計模式之物件導向基礎
a.2 類與例項 物件是乙個自包含的實體,用一組可識別的特性和行為來標識。物件導向程式設計 object oriented programming 類就是具有相同的屬性和功能的物件的抽象的集合。例項,就是乙個真實的物件。例項化就是建立物件的過程,使用new關鍵字來建立。a.3 構造方法 構造方法,又...
設計模式之物件導向
1物件 是乙個自包含的實體,用一組可識別的特性和行為來標識 2類 具有相同屬性和功能的物件的抽象的集合 3類的例項化 例項,就是乙個真實的物件。例項化就是建立物件的過程,用 new關鍵字來建立 4構造方法 又叫建構函式,其實就是對類進行初始化。構造方法與類同名,無返回值,也不需要 void,在new...
設計模式之物件導向
介面邏輯與業務邏輯分離。使用繼承與多型提高擴充套件性和復用性。對於專案剛開始的時候,可以不進行抽象,但是如果需求改變的時候,需要建立抽象來隔離以後可能發生的同類變化,也就是說對於程式的改動,是通過增加新 而不是修改舊 來完成。對於乙個類來說,應該只有乙個引起它變化的原因。職責過多會導致高度耦合。對於...