物件導向包含3部分:物件導向分析(Object Oriented Analysis,OOA)、物件導向設計(Object Oriented Design,OOD)、以及物件導向程式設計(Object Oriented Programming,OOP)。物件導向程式設計的兩個重要概念是類別和物件。
類
類別是變數與作用這些變數的方法集合,事物都具有其自身的屬性和方法,透過這些屬性和方法可以將不同的物質區分開來。例如:人具有身高、體重、胖瘦以及膚色等屬性,還可以進行吃飯、學習、走路等能動性的活動,這些活動可以說是人擁有的功能。可以把人看做程序中的一個類,那麼人的身高可以比喻為類中的屬性,走路可以比喻為類中的方法。也就是說,類別是屬性和方法的集合,是物件導向程式設計方式的核心和基礎,透過類別可以將零散的用於實現某項功能的程式碼進行有效的管理。
對象
類別是具備某項功能的抽像模型,實際應用中還需要對類別進行實例化,這樣就可以引入物件的概念。物件是類別進行實例化後的產物,是一個實體。仍然以人為例,”黃種人是人”這句話沒有錯,但反過來說”人是黃種人”,這句話一定是錯的。因為人除了黃種人還有黑種人,白種人等。那麼”黃種人”就是”人”這個類別的一個實例對象。可以這樣理解物件和類別的關係:物件其實就是有血有肉的,能摸得到看的著的一個類別。
物件導向程式設計的三大特點
物件導向程式設計具有封裝性、繼承性和多態性三大特點。封裝可以有效避免程式設計時程式碼耦合,繼承可以有效地利用程式碼資源,多態性可以有效提高程式碼的重用性。
封裝性:
封裝性也可以成為資訊隱藏,就是將一個類別的使用與實作分開,只保留有限的介面(方法)與外部聯繫。對於用到該類別的開發人員,只需要知道這個類別如何使用即可,而不用去關心這個類別是如何實現的。這樣做可以讓開發人員更好地把精力集中起來專注於別的事情,同時也避免了程式之間的相互依賴所帶來的不便。
繼承性:
繼承性就是衍生類別(子類別)自動繼承一個或多個基底類別(父類別)中的屬性與方法,並且可以重寫或新增新的屬性或方法。繼承這個特性簡化了物件和類別的創建,增加的程式碼的可重用性。繼承分為單繼承和多繼承,PHP目前只支援單繼承,也就是說,一個子類別有且只有一個父類別。
多態性:
多態性是指同一個類別的不同對象,使用同一個方法可以得到不同的結果,而這種技術變成多態性。多態性增強了軟體的靈活性和重用性。
純手打,如有不到之處,望多多指正。 ').addClass('pre-numbering').hide();
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i ').text(i));
};
$numbering.fadeIn(1700);
});
});
以上就介紹了物件導向的基本概念,包括了物件導向方面的內容,希望對PHP教程有興趣的朋友有所幫助。