什么是構造函數呢?構造函數又有什么作用呢?
構造函數 ,是一種特殊的方法。主要用來在創建對象時初始化對象, 即為對象成員變量賦初始值,總與new運算符一起使用在創建對象的語句中。特別的一個類可以有多個構造函數 ,可根據其參數個數的不同或參數類型的不同來區分它們 即構造函數的重載。
可能上面的描述大家還是不能很清楚的了解,我們就舉例子向大家講解下。
構造函數的用法實例
我們先創建一個類,並且初始化這個類。
1
2
3
4
5
6
7
8
9
10
11
|
class
Preson{
public
$name
;
//定義變量
public
$age
;
public
$sex
;
public
$height
;
}
$Preson1
=
new
Preson();
$Preson1
->
$name
=
"大白"
;
//變量賦值
$Preson1
->
$age
= 20;
$Preson1
->
$sex
=
"女"
;
$Preson1
->
$height
= 180;
|
可以看到,上述例子中賦值過程比較繁瑣,如果變量很多的話,工作量將會非常大,很麻煩。所以,我們引入了構造方法。所以構造函數的作用就是用來初始化對象的。該方法可以沒有參數,也可以有多個參數。定義構造函數也很簡單,__construct(),值得注意的是函數construct前面是兩個下划線"_".
了解了構造函數之后,我們用構造函數來重寫上面的例子:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
class
Preson{
public
$name
;
//定義變量
public
$age
;
public
$sex
;
public
$height
;
function
__construct(
$name
,
$age
,
$sex
,
$height
){
$this
->name =
$name
;
//為變量賦值
$this
->age =
$age
;
$this
->sex =
$sex
;
$this
->height =
$height
;
}
public
function
PlayBaskteBall(){
if
(
$this
->height>175 ||
$this
->age < 22){
return
$this
->name .
"可以打籃球"
;
}
else
{
return
$this
->name .
"不具備打球的條件"
;
}
}
}
$Preson1
=
new
Preson(
"大白"
,
"20"
,
"女"
,
"180"
);
echo
$
$Preson1
->PlayBaskteBall();
|
構造方法是初始化對象時使用的,如果沒有構造方法,那么PHP會自動生成一個。自動生成的構造方法沒有任何參數,沒有任何操作。
以上就是php面向對象之構造函數作用與方法的詳細內容,更多請關注php中文網其它相關文章!