php面向?qū)ο蟪绦蛟O(shè)計(jì)
類:定義一件事物的抽象特點(diǎn)。
對(duì)象:類的 實(shí)例。
成員變量 − 定義在類內(nèi)部的變量。該變量的值對(duì)外是不可見(jiàn)的,但是可以通過(guò)成員函數(shù)訪問(wèn),在類被實(shí)例化為對(duì)象后,該變量即可稱為對(duì)象的屬性。var關(guān)鍵字定義成員變量。
多態(tài):相同的函數(shù)或方法可作用于多種類型對(duì)象產(chǎn)生不同結(jié)果。
封裝:現(xiàn)實(shí)世界中存在的某個(gè)客體的屬性和行為綁定在一起,并放置在一個(gè)邏輯單元中。
構(gòu)造函數(shù):創(chuàng)建對(duì)象是初始化對(duì)象,為對(duì)象成員變量賦初始值,與new運(yùn)算符一起使用在創(chuàng)建對(duì)象的語(yǔ)句中。
定義類:
<?php class site(){ /* 成員變量 */ var $url; var $title; /* 成員函數(shù) */ function setUrl($par){ $this->url = $par; } function getUrl(){ echo $this->url . PHP_EOL; } } ?>
類的變量使用 var 來(lái)聲明, 變量也可以初始化值。
函數(shù)定義類似 PHP 函數(shù)的定義,但函數(shù)只能通過(guò)該類及其實(shí)例化的對(duì)象訪問(wèn)。
變量 $this 代表自身的對(duì)象。
創(chuàng)建對(duì)象:
$baidu = new site; $taobao = new site;
調(diào)用成員方法:
$baidu->setUrl("www.baidu.com"); $baidu->getUrl();
構(gòu)造方法:
function __construct($baidu){ $this->url = $baidu; }
現(xiàn)在可以這樣實(shí)例化對(duì)象:
$baidu = new site("www.baidu.com"); //調(diào)用成員函數(shù) $baidu->getUrl()
方法重寫(xiě):
// 從父類繼承的方法不能滿足子類時(shí),可以對(duì)方法進(jìn)行重寫(xiě)覆蓋(override) function getUrl() { echo $this->url . PHP_EOL; return $this->url; }
訪問(wèn)控制:
public 公有公有的類成員可以在任何地方被訪問(wèn)。protected 受保護(hù)受保護(hù)的類成員則可以被其自身以及其子類和父類訪問(wèn)。private 私有私有的類成員則只能被其定義所在的類訪問(wèn)。(繼承類也不能訪問(wèn))
static關(guān)鍵字:
聲明方法或類屬性為static,可以不實(shí)例化而直接訪問(wèn)。靜態(tài)屬性不能通過(guò)一個(gè)類已實(shí)例化的對(duì)象來(lái)訪問(wèn)(但靜態(tài)方法可以)。
Final關(guān)鍵字:
如果父類中的方法被聲明final,則子類不能覆蓋該方法(重寫(xiě));如果類被聲明final則該類不能被繼承。
調(diào)用父類的構(gòu)造方法:
PHP 不會(huì)在子類的構(gòu)造方法中自動(dòng)的調(diào)用父類的構(gòu)造方法。要執(zhí)行父類的構(gòu)造方法,需要在子類的構(gòu)造方法中調(diào)用 parent::__construct() 。
<?php class base{ function __construct(){ print "base類構(gòu)造方法".PHP_EOL; } } class sub extends base{ function __construct() { parent::__construct();// 子類不能自動(dòng)繼承父類構(gòu)造方法 print "子類sub的構(gòu)造方法".PHP_EOL; } } // 調(diào)用base構(gòu)造方法 $obj1 = new base(); // 調(diào)用base、sub構(gòu)造方法 $obj2 = new sub(); ?>
到此這篇關(guān)于php面向?qū)ο蟪绦蛟O(shè)計(jì)的文章就介紹到這了,更多相關(guān)php面向?qū)ο髢?nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
相關(guān)文章:
