類成員訪問控制:
1、public 預設的,任何地方都可以訪問,類內,類外,子類中
2、protected 受保護的,對外是封閉的,但是類內部和子類可以訪問
3、private 私有的,僅限於本類中訪問
靜態屬性和靜態方法
static關鍵字宣告了乙個屬性或方法是和類相關的,而不是和類的某個特定的例項相關,因此,這類屬性或方法也成為'類屬性'或類方法。
靜態方法的特點
static方法是累漲的乙個成員方法,屬於整個類,即是不建立任何物件也可以直接使用。靜態方法的缺點是不自動進行銷毀,而例項化的則可以做銷毀。
靜態屬性的特點
1.static的屬性,在記憶體中只有乙份,為所有的例項共用。
2.使用self:: 關鍵字訪問當前類的靜態成員。
3.乙個類的所有例項,共用類中的靜態屬性。
4.在記憶體中即使有多個例項,靜態的屬性也只有乙份。
使用靜態方法
1.在類外呼叫靜態方法時: 使用 類名::靜態方法名
2.在類中呼叫其他靜態方法時 :使用self::靜態方法名,不能使用thi
s('>this(
this(this指的是例項化類後的具體物件)th
is('>其他th
is('>靜態屬性不需要例項化就可以直接使用,在物件還沒有建立時就可以直接使用。
在靜態方法中不能使用thi
s−>呼叫
非靜態方
法或者非
靜態屬性
在靜態方
法中不能
使用'>this−>呼叫
當乙個類中有非靜態方法被self:: 呼叫時,系統會自動將這個方法轉換為靜態方法。th
is('>thi
s−>呼叫
非靜態方
法或者非
靜態屬性
在靜態方
法中不能
使用'>類外部呼叫靜態屬性和靜態方法
<?phpthnamespace _1010;
//靜態屬性和靜態方法,外部呼叫
class person
}echo person::$age,'
';//類外部呼叫靜態屬性
echo person::intro();//類外部呼叫靜態方法
is('>thi
s−>呼叫
非靜態方
法或者非
靜態屬性
在靜態方
法中不能
使用'>類內部呼叫靜態屬性
<?php//內部呼叫靜態屬性
class person
//設定靜態屬性
public function setage($age)
//獲取靜態屬性
public function getage()
}//例項化物件
$p = new person();
$p->intro();
$p->setage(66);
$p->getage();
類內部呼叫靜態方法
PHP中 類的訪問控制
在php中主要通過public protectd private等關鍵字來定義訪問許可權。public 被public修飾的屬性和方法,可以在程式中任何位置被訪問,而且可以被子類繼承。php中,類方法的訪問許可權預設都是public。protected 被protected修飾的屬性和方法,可以在所...
C 類成員訪問控制及繼承的訪問控制
公有型別成員定義了類的外部介面,在類外智慧型訪問類的公有成員 私有成員只能被本類的成員函式訪問,來自外部的任何訪問都是非法的,完全隱藏在類中,保護了資料的安全性 保護型別成員的性質和私有成員性質相似,其差別在於繼承過程中對產生的新類的影響不同,意義在於不想向外部暴露某個函式或者成員變數,但又想讓派生...
C艹 類的繼承 類成員的訪問控制
一 類的繼承 1.類在功能上的拓展 extend 2.只能有乙個基類,但可以實現多個基介面 3.類訪問級別對繼承的影響 4.sealed類不能被繼承 例1 using system using system.collections.generic using system.linq using sy...