天天看點

PHP 面向對象如果您覺得本篇内容不錯,可以點個關注,給個贊

1.定義類

class A{
	public $name;
	public $age;
	public function B($_name){
		$this->name=$_name;
	}	//定義方法
}

建立對象
$a = new A();

指派
$a->name="小明";
$a->age=12;

輸出
echo $a->name;

調用對象中的方法
$a->B();
           

2.構造方法,沒有傳回值

(1)public function 類名(){}
(2)public function __construct(){}
注:構造方法在建立對象時就會被自動調用
           

3.析構函數

function _destruct(){}
注:(1)退出時自動被調用
    (2)對象沒有被引用變為垃圾對象時,會自動調用該對象的析構方法
    (3)用于銷毀資源,如關閉資料庫
    (4)沒有傳回值
           

4.靜态變量

//定義并初始化方法
public static $a = 0;
//類裡調用
(1)self::$a+=1;
(2)::$a+=1;
//類外調用
類名::$a+=1;
           

5.靜态方法(不能通路非靜态變量)

static function A(){}
内部調用:
(1)self::A();
(2)類名::A();
外部調用:
(1)類名::A();
(2)對象名->A();
           

6.封裝

public		公有
private		私有,隻有本類可使用
protected	本類和子類中可使用
           

7.繼承

class 子類名 extends 父類{}
注:将一些共用屬性和方法封裝進父類中隻會繼承父類中的public屬性/protected屬性
           

8.抽象類

(1)不能被執行個體化的類,建立不了對象,如父類
abstract class A{}
(2)抽象方法,沒有方法體
abstract function a();
(3)繼承了抽象類一定要定義裡面的所有抽象方法
           

9.final關鍵字

如果不希望某類被繼承(安全性問題)
	final class A{}
如果希望某方法不被重寫
	final function a(){}
注:final 關鍵字不能修飾屬性
           

10.接口

定義接口
	interface 接口名{}
注:接口的方法沒有方法體
    接口中可以有屬性,但是必須是常量
實作接口
	class 類名 implements 接口1,接口2...{}
注:實作接口,一定要聲明裡面的所有方法
           

如果您覺得本篇内容不錯,可以點個關注,給個贊

繼續閱讀