PHP 方法修飾符

2021-10-04 11:42:37 字數 2718 閱讀 5326

方法修飾符有:static、final、abstract

1.5.1 static【靜態的】

static修飾的屬性叫靜態屬性、static修飾的方法叫靜態方法

靜態成員載入類的時候分配空間,程式執行完畢後銷毀

靜態成員在記憶體中就乙份。

呼叫語法 類名::屬性 類名::方法名()

<?php 

class

person

}echo person:

:$add,'

';//北京

person:

:show()

;//這是乙個靜態的方法

<?php 

class

student

public

function

__destruct()

public

function

show()

}//測試

$stu1

=new

student

;$stu2

=new

student

;$stu3

=new

student

;$stu2

->

show()

;//總人數是:3

unset

($stu2);

$stu3

->

show()

;//總人數是:2

**注意:**self表示所在類的類名,使用self降低耦合性

靜態成員也可以被繼承

<?php 

class

person

}//繼承

class

student

extends

person

//測試

echo student:

:$add,'

';//中國 通過子類名稱訪問父類的靜態成員

student:

:show()

;//這是人類

靜態延時繫結

static表示當前物件所屬的類

<?php 

class

person

//echo self::$type,'

'; //人類

echo

static::

$type,'

';//學生 延時繫結}}

class

student

extends

person

//echo self::$type,'

'; //學生

echo

static::

$type,'

';//學生}}

//測試

$obj

=new

student()

;$obj

->

show1()

;$obj

->

show2()

;

小結:

1、static在記憶體中就乙份,在類載入的時候分配空間

2、如果有多個修飾符,修飾符之間是沒有順序的

3、self表示所在類的類名

4、static表示當前物件所屬的類

5、static有兩個作用,第一表示靜態的,第二表示類名

1.5.2 final【最終的】

final修飾的方法不能被重寫

final修飾的類不能被繼承

作用1、如果乙個類確定不被繼承,乙個方法確定不會被重寫,用final修飾可以提高執行效率。

2、如果乙個方法不允許被其他類重寫,可以用final修飾。

1.5.3 abstract【抽象的】

abstract修飾的方法是抽象方法,修飾的類是抽象類

只有方法的宣告沒有方法的實現稱為抽象方法

乙個類中只要有乙個方法是抽象方法,這個類必須是抽象類。

抽象類的特點是不能被例項化

子類繼承了抽象類,就必須重新實現父類的所有的抽象方法,否則不允許例項化

類中沒有抽象方法也可以宣告成抽象類,用來阻止類的例項化 例題

<?php 

//抽象類

abstract

class

person

}//繼承

class

student

extends

person

}//測試

$stu

=new

student

;$stu

->

setinfo()

;//重新實現父類的抽象方法

$stu

->

getinfo()

;//獲取資訊

抽象類的作用:

1定義命名規範

2、阻止例項化,如果乙個類中所有的方法都是靜態方法,這時候沒有必要去例項化,可以通過abstract來阻止來的例項化。

java 類修飾符 成員變數修飾符 方法修飾符總結

類修飾符 public 訪問控制符 將乙個類宣告為公共類,他可以被任何物件訪問,乙個程式的主類必須是公共類。abstract,將乙個類宣告為抽象類,沒有實現的方法,需要子類提供方法實現。final,將乙個類生命為最終 即非繼承類 表示他不能被其他類繼承。friendly,預設的修飾符,只有在相同包中...

成員變數修飾符 以及方法修飾符

public 公共訪問控制符 指定該變數為公共的,工程內。private 私有訪問控制符 指定該變數只允許自己的類的方法訪問。除了本類,都無法直接使用 protected 保護訪問控制符 指定該變數可以別被自己的類和子類訪問。在子類中可以覆蓋此變數。friendly 在同乙個包中的類可以訪問,其他包...

修飾符 許可權修飾符

四種形式許可權修飾符的訪問情況 publicprotected不寫private 同乙個類中 四種都可以 同一包中的不同類 除了private剩下都可以 不同包下的子類 public protected 可以 不同包下的不同類 只有public可以 許可權修飾符 public protected 預...