php的建構函式解析

2021-08-05 00:01:06 字數 1344 閱讀 8324

1、什麼是構造方法:

構造方法是類中的乙個特殊方法。當使用 new 操作符建立乙個類的例項時,構造方法將會自動呼叫,其名稱

必須是 __construct() 。在乙個類中只能宣告乙個構造方法,而是只有在每次建立物件的時候都會去呼叫一次構造

方法,不能主動的呼叫這個方法,所以通常用它執行一些有用的初始化任務。該方法無返回值。

2、構造方法的常用格式:

建構函式的作用是什麼?為了讓你更好的理解,我舉工廠的例子開始講起:

我們知道,在乙個工廠裡面,要生產同要求的產品,那麼就需要cad模具。如果引申到我們的php中,

我們可以理解為類就是cad模具,決定了產品的形狀;而物件就是產品;要求(長度、寬度、高度、半徑等等指標)

就是類中的類的屬性。

當我們要生產產品,首先我們要根據需求方明確該產品有哪些要求,比如是做一批長方形的產品(產品a,產品b

,產品c),我們的cad模具(類),要求是長、寬、高指標(類屬性)。進而需要的是產品a,b,c,長、寬、高的各項

指標的具體引數(類屬性引數)。

假設你是工廠的技術員,你怎麼操作cad模具呢?

第一種方法:

class長方形產品a模具:

$產品a=new class 長方形產品a();

class 長方形產品b模具:

$產品b=new class 長方形產品b();

class 長方形產品c模具:

$產品b=new class 長方形產品c();

第二種方法:用構造方法就是

class 長方形產品模具類:

例項化各產品物件的時候,我們只需要

$產品a=new class長方形產品cad模具類(1.1m,1.2m,1.5m);

$產品b=new class長方形產品cad模具類(1.4m,1.7m1.8m);

$產品c=new class長方形產品cad模具類(1.1m,1.0m1.9m);

....

如果是生產不規則形狀的產品,那麼技術員要設定的cad模具(類)指標(類屬性)就會很多,如果該批 產品

大小種類

還很多的話(物件很多),需要設定很多的指標引數(類屬性引數),顯而易見後者第二種方法 的

工作效率會高很多。

也就是說構造方法__construct()例項化類物件的時候有很大的優勢,一次建類,多次重複使用。在這裡,

我們也就明白了構造方法的好處是其可以接受引數,例項化物件時,為不同的物件設定不同的屬性初始化值。

3、注意:如果子類不寫建構函式的話,會自動繼承父類的建構函式

如果子類寫建構函式的話,則不會繼承父類的建構函式

父類的建構函式如果是私有的,可以被繼承,但是子類必須有自己的建構函式,並且明確寫出來

php類與建構函式解析

關於類大家都有一定的認識這裡只介紹在php中類值得注意的地方 類的建立 php使用關鍵字class建立乙個類,並且使用一對大括號 如 class name public function rename newn 結尾不打分號。則 n,u為字段 name 為建構函式 construct 也可定義建構函...

PHP 類與建構函式解析

類的建立 php使用關鍵字class建立乙個類,並且使用一對大括號 如 class name public function rename newn 結尾不打分號。則 n,u為字段 name 為建構函式 construct 也可定義建構函式,詳見下文 可以為字段賦值 rename 為方法。欄位與方法...

建構函式 解析建構函式的作用

建構函式 是一種特殊的方法。主要用來在建立物件時初始化物件,即為物件 成員變數 賦初始值,總與new 運算子一起使用在建立物件的語句中。特別的乙個類可以有多個建構函式 可根據其引數個數的不同或引數型別的不同來區分它們 即建構函式的 過載。那麼,為什麼要在建立物件時初始化物件呢?又是如何實現的呢?接下...