面向對象的開發3 類的封裝

封裝關鍵字ide

public 全局屬性,任何地方均可以訪問函數

protected 表示受保護的,只有本類的子類或父類能夠訪問this

private表示私有的,只有在本類中能夠訪問spa

  public protected private
全局
繼承類
本類

 

 

  
  
  
  
  1. class Myclass{  
  2. public $name;  
  3. protacted $type;  
  4. function __construct($name){  
  5. $this->name=$name;  
  6. }  
  7. private function myfun (){  
  8. reutrn "這是一個例子";  
  9. ]  

本利中有三個成員,兩個成員屬性,一個成員方法。對象

 首先咱們初始化對象繼承

  
  
  
  
  1. $nyclass = new Myclass('個人電腦');  
  2. $myclass->name;//這是沒有任何錯誤的,由於是public屬性  
  3. $myclass->type;//這是錯誤的,由於是protacted屬性  
  4. $myclass->myfun(); //這是錯誤的,由於是private屬性  
//若是要輸出type,私有屬性,必需要使用 __get函數,要修改或賦值,必需要使用__set函數

例子ci

  
  
  
  
  1. <?  
  2. class Myclass{  
  3. private $name;  
  4. function __construct($name){  
  5. return $this->name=$name;  
  6. }  
  7. function __get($name){  
  8. return $this->name;  
  9. }  
  10. function __set($n,$v){  
  11. $this->$n=$v;  
  12. }  
  13. function myfun(){  
  14. return "這是一個例子";  
  15. }  
  16. }  
  17. $myclass = new Myclass('個人電腦');  
  18. $myclass->name="你的電腦";  
  19. echo $myclass->name.$myclass->myfun();  
  20. ?> 

輸出結果 你的電腦 這是一個例子get

相關文章
相關標籤/搜索