PHP面向物件 基本概念
阿新 • • 發佈:2020-12-10
面向物件介紹
-
概述
- 面向物件是一個程式設計思想。程式設計思想有面向過程和麵向物件
- 面向過程:程式設計思路集中的是過程上
- 面向物件:程式設計思路集中在參與的物件
- 面向物件是一個程式設計思想。程式設計思想有面向過程和麵向物件
-
好處
- 多人合作方便
- 減少程式碼冗餘,靈活性高
- 程式碼的可重用性發揮到極致
- 可擴充套件性強
-
名詞
- OOP:面向物件程式設計(Object Oriented Programming,面向物件程式設計)
- OOA: 面向物件分析(Object-Oriented Analysis,OOA)
- OOD: 面向物件設計(Object-Oriented Design,OOD)
類和物件
-
概念
- 物件是具體存在的事物,物件是由屬性(變數)和方法(函式)組成的
- 類是具有相同屬性和行為的一組物件的集合
- 一個類可以建立多個物件
-
理解
- 物件是由屬性和方法組成的
- 類是所有物件的相同屬性和方法的集合
- 在開發的時候先寫類,通過類建立物件,通過物件呼叫方法和屬性
- 一個類可以建立多個物件
在PHP中實現類和物件
建立類
- 語法
class 類名{
//屬性
//方法
//常量
}
- 概念
- 類是由屬性、方法、常量組成的
- 也可以說類成員有:屬性、方法、常量
類名的命名規則
- 規則
- 以字母、下劃線開頭,後面跟的是字母、數字、下劃線
- 不能用PHP關鍵字做類名
- 類名不區分大小寫(變數名區分,關鍵字、類名不區分大小寫)
- 類名用帕斯卡命名法(大駝峰 單詞的首字母大寫)
<?php
class Student {
//屬性
//方法
//常量
}
?>
物件例項化
- 通過new關鍵字來例項化物件。
- 小括號可以省略
<?php
//定義類
class Student {
//屬性
//方法
//常量
}
//例項化物件
$stu1=new Student();
$stu2=new Student;
var_dump($stu1,$stu2);
?>
物件的比較
- 概述
- 相等:結構和儲存的值一樣就相等
- 全等:指向同一個物件才是全等
- 物件的傳遞是地址傳遞
<?php //定義類 class Student { } //例項化物件 $stu1=new Student(); $stu2=new Student; $stu3=$stu2; //物件傳遞的是地址 var_dump($stu1==$stu2); //bool(true) ,比較物件的結構 echo '<br>'; var_dump($stu1===$stu2); //bool(false) $stu1和$stu2是否是同一個物件 echo '<br>'; var_dump($stu2===$stu3); //bool(true) $stu2和$stu3是同一個物件 ?>