關於類別大家都有一定的認識這裡只介紹在php中類別值得注意的地方
----類別的創建----
#php使用關鍵字class建立一個類,並且使用一對大括號
如:
class name{ public $n=""; private $u=""; public function name() { $n="233"; $u="23333"; } public function rename($newn){ $this->n=$newn;//this表示这个类 } }
結尾不打分號。則$n,$u為欄位;name()為建構子(construct()也可定義建構函數,詳見下文),可以為欄位賦值; rename()為方法。
----欄位----
比較
#$obj=new name();
echo $obj->n;
與
$obj=new name();
echo $obj-> ;u;
前者可執行,後者不可因為$u前宣告了私有private。這一點是與c++類似的。
程式碼:
public static $nm ="2333333333333333" ;
為函數申明了一個靜態欄位。
透過類別名稱與::可以直接存取該變數
echo name::$nm;
這一點也是與c++類似的。
php中也可以透過 self::+$+變數名稱 在類別中存取靜態字段,這時self相當於$this-> ;。
方法的使用與欄位類似
----建構子----
在php5和早期版本中建構子與類別同名
在php5和之後的版本中魔術字construct() 可定義建構子
魔術字construct() 可定義建構子
class name{ public $n=""; private $u=""; public function construct() { $n="233"; $u="23333"; } public function rename($newn){ $this->n=$newn; } }
建構子可有參數
construct($name="",$sex="man",$age=0) {}
在申明物件時
$obj= new name("我","man",28);
如果沒有給予參數,則預設為=後的值。
以上是深入理解php類別與建構函式解析的詳細內容。更多資訊請關注PHP中文網其他相關文章!