PHP7 物件導向 筆記一 物件導向的相關概念

2021-08-27 13:49:49 字數 2454 閱讀 6078

四、物件的特徵

五、類與物件的區別與聯絡

六、類的宣告

七、類的例項化

八、建立物件

把具有相似特徵和行為的物件歸為一類,類定義了相似物件擁有的相同屬性及方法,類是模板或者說是原型,通過類這個模板及屬性的變換才會有不同的物件,也是通過屬性行為確定一類。

物件-是類的例項。

類的物件稱為類的乙個例項,例如:明星這個類,然後才有劉亦菲,趙薇這些明星,在程式設計當中是先有類,然後才有物件的。

世間萬物皆物件:我、你、張

三、蘋果、電腦等。

物件是指具備某種功能屬性的實體,一切可見之物都是物件。一切不可見之物(抽象事物)也是物件。

1) 封裝

找到變化並且把它封裝起來,你就可以在不影響其它部分的情況下修改或擴充套件被封裝的變化部分,這是所有設計模式的基礎,就是封裝變化,因此封裝的作用,就解決了程式的可擴充套件性。

2) 繼承

子類繼承父類,可以繼承父類的方法及屬性,實現了多型以及**的重用,因此也解決了系統的重用性和擴充套件性。但是繼承破壞了封裝,因為他是對子類開放的,修改父類會導致所有子類的改變,因此繼承一定程度上又破壞了系統的可擴充套件性,所以繼承需要慎用。

3) 多型

介面的多種不同的時下方式即為多型。介面是對行為的抽象。

物件包含兩個部分

1) 物件的組成元素

也就是物件的屬性,或者成員變數,也就是物件的一些特徵,比如大象的特徵藍顏色、名字叫做php的大象,就是該事物的描述資訊。

2) 物件的行為

用於描述物件能做什麼,又被稱之為方法,比如大象能夠用鼻子甩水,劉亦菲會演戲,這些都是行為。

1) 類是抽象的,概念的,代表一類事物,比如人類,貓類…;

2) 物件是具體的,實際的,代表乙個具體事物;

3) 類是物件的模板,物件是類的乙個個體例項。

1) 基本語法

class 類名

}

類的定義:以class開始,後面跟著類名,以中括號開始及結束。

2) 舉例

/*

* class animal 檔名與類名一致

*/class

animal

public

function

run()

}

通過類這個模板來建立乙個物件。

-通過明星這個類建立乙個劉亦菲或者范冰冰、李冰冰

1) 基本語法

$物件名 = new 類名();

$物件名 = new 類名;

2) 物件-如何訪問(使用)物件的屬性?
$物件名->屬性名;
->稱為物件運算子3) 舉例1:例項化上面的類

$elephant = new animal();

var_dump($elephant->eat());

echo'';

var_dump($elephant->run());

完整**如下:

class

animal

public

function

run()

}// 例項化

$elephant = new animal();

var_dump($elephant->eat());

echo

'';var_dump($elephant->run());

執行結果:

注:不要在方法的內部用輸出(var_dump或者echo),否則返回值會為null。

4) 舉例2:動態的改變變數的值

class

animal

}$elephant = new animal();

var_dump($elephant->eat('老虎', '肉'));

echo

'';var_dump($elephant->eat('大象', '草'));

執行結果:

設計模式 物件導向一 物件導向

什麼是物件導向程式設計?物件導向程式設計是一種程式設計正規化和程式設計風格。它以類或物件作為組織 的基本單元,並將封裝 抽象 繼承 多型四個特性,作為 設計和實現的基石 什麼是物件導向程式設計語言?物件導向程式設計語言是支援類或物件的語法機制,並有現成的語法機制,能方便的實現物件導向程式設計四大特性...

python物件導向(一) 物件導向基礎

物件導向是python中乙個重點知識,用物件導向的思想程式設計,有利於模組化 方便閱讀和後期的維護。面向過程 注重解決問題的步驟,讓問題根據步驟流程一步一步得到解決 物件導向 萬物皆物件,每個物件都有特徵和功能,物件間又可以相互作用 類 具有相同特徵或行為的事物的統稱 抽象的,不可直接使用 物件 物...

Python之物件導向(一)物件導向初識

物件導向初識 物件導向 類的結構 從類名的角度研究類 類名操作動態方法 從物件的角度研究類 物件操作物件空間屬性 物件檢視類中的屬性 class human mind 有思想 language 實用語言 def init self,name,age,hobby self.n name self.s ...