close
文章出處
復習一下之前說的php的其他知識
類
由眾多對象抽象出來的
對象
由類實例化出來的 (所有的東西都可以把它看做成對象)
(類是不能直接用的,關鍵字new,可以造一個新對象來提取類中的功能)
成員變量
成員方法(成員函數)
成員屬性
訪問修飾符(成員的前面可以加,來決定成員的權限)
public 公有的
protected 受保護的(只能在該類或該類子類可以訪問)
private 私有的(只能在該類,花括號內可以訪問)
構造函數(對類里面某個成員可以進行初始化)
1.寫法特殊
2.執行時間特殊
面向對象的三大特性:
1、封裝
2、繼承
3、多態
封裝:
目的:為了使一個類更加安全
做法:1、將成員變量變為私有的
2、在類里面做方法來間接訪問成員變量
3、在方法里面加控制
例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>無標題文檔</title> </head> <body> <?php class Ren { public $code; //人員代號 private $name; //人員名稱 private $sex; //人員性別 private $age; //人員年齡,必須在18-50周歲之間 //構造方法,用來初始化性別 function __construct($s) { $this->sex = $s; } /*//造一個修改年齡的方法 function SetAge($a) { //加控制 if($a>18 && $a<50) { $this->age = $a; } } //造一個獲取age值的方法 function GetAge() { return $this->age; }*/ //給變量賦值的魔術方法 function __set($n,$v) { if($n=="age") { if($v>18 && $v<50) { $this->$n = $v; } } else { $this->$n = $v; } } //__get魔術方法,用來取變量值的 function __get($n) { return $this->$n; } } //造對象 $r = new Ren("男"); //$r->SetAge(30); //$r->__set("age",30); $r->age = 30; //自動調用__set()方法,將變量名當做第一個參數,將等號右邊的值當做第二個參數 $r->name = "張三"; //echo $r->sex; //自動調用__get()方法,將變量名當做參數 //var_dump($r); class Dog { private $name; function Jiao() { echo $this->name."在叫"; } function SetName($n) { $this->name = $n; return $this; } } $d = new Dog(); $d->SetName("旺財")->Jiao(); ?> </body> </html>
不含病毒。www.avast.com |
全站熱搜
留言列表