一 、PHP實例化對象php
一、注意:在類的成員屬性前面必定要有一個修飾詞,若是不知道使用什麼修飾詞,就可使用 var(關鍵字),若是一旦有其它的修飾詞就不要有 var。編程
二、只要是對象中的成員,就必須使用這個對象來訪問到這個對象內部的屬性和方法函數
三、構造函數this
一、是對象建立完成以後,第一個自動調用的方法(特殊);spa
二、方法名比較特殊,能夠和類名相同名的方法名;code
三、給對象中的成員賦初始值使用的,傳參方式對象
<?php class BoyFriend { //變量(成員屬性) var $name = "張三"; var $age = 18; var $height = "175cm"; var $sex; //構造方法: $this => 類自己;sex=>變量;$sex=>初始化參數、 //一開始就會執行(自動執行), function BoyFriend($sex){ $this -> sex = $sex; } //函數(成員方法) public function fnO($row, $cal){ return "功能一"; } } //使用類前必須先 new $bf1 = new BoyFriend(); //調用類中的參數:->sex 不須要加 $ echo $bf1 -> sex."<br>" //調用類中的方法,須要傳參數必須傳 echo $bf1 -> fnO("1", "2"); ?>
四、封裝性是面向對象編程中的三大特性之一,封裝就是把對象中的成員屬性和成員方法加上訪問修飾符,使其儘量隱藏對象的內部細節,以達到對成員的訪問控制(切記不是拒絕訪問)。blog
五、public (公有的 默認的)、private (私有的)、protected (受保護的)繼承
六、魔術方法get
__get()
一、自動調用,是在直接訪問私有成員時,自動調用! 一個參數;(用於替代通用的set賦值方法)
__set()
二、自動調用,是在直接設置私有屬性時,兩個參數;(用於替代通用的get取值方法)
__isset() 在是用 isset() 判斷一個私有屬性時否存在時,自動調用 __isset() 魔術方法,參數則是屬性名稱;(檢測對象中成員屬性是否存在)
__unset() ;(銷燬對象中成員屬性方法)
2、類的繼承性、擴展性
一、子類使用 extends 繼承父類 子類能夠將父類中全部的內容繼承過來;
二、private:私有的, 只能類本身用,不能別人用,包括本身的子類也不能用;
三、protected:保護的權限,只能是本身和本身的子類中可使用的成員,不能再外面使用
四、pulic: 公開的權限(默認),全部均可以,本身,子類,類外部均可以使用
class Person { public $name; protected $age; protected $sex; //引入參數 function __construct($name, $age, $sex) { $this->name = $name; $this->age = $age; $this->sex = $sex; } public function say() { echo "個人名子是:{$this->name},個人年齡是:{$this->age},個人性別是:{$this->sex}。<br>"; } function eat() { echo "11111111111111<br>"; } function run() { } } class Student extends Person{ var $school; function study() { } } class Teacher extends Student { var $gz; function jiao() { echo "個人名子是:{$this->name},個人年齡是:{$this->age},個人性別是:{$this->sex}。<br>"; } } $t = new Teacher("高洛峯", 30, "男"); $t -> jiao(); echo $t->name;