日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

PHP基礎之類和對象1——簡介及基本概念

瀏覽:29日期:2022-09-14 17:09:57
一、簡介

自 PHP 5 起完全重寫了對象模型以得到更佳性能和更多特性。這是自 PHP 4 以來的最大變化。PHP 5 具有完整的對象模型。PHP 5 中的新特性包括訪問控制,抽象類和?final?類與方法,附加的魔術方法,接口,對象復制和類型約束。PHP 對待對象的方式與引用和句柄相同,即每個變量都持有對象的引用,而不是整個對象的拷貝。

二、基本概念1.class

每個類的定義都以關鍵字?class?開頭,后面跟著類名,后面跟著一對花括號,里面包含有類的屬性與方法的定義。類名可以是任何非 PHP?保留字的合法標簽。一個合法類名以字母或下劃線開頭,后面跟著若干字母,數字或下劃線。以正則表達式表示為:[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*。一個類可以包含有屬于自己的常量,變量(稱為“屬性”)以及函數(稱為“方法”)。Example #1 簡單的類定義

<?php class SimpleClass {//聲明屬性public $var = ’1’;//聲明方法public function displayVar(){ echo $this->var;} }?>

當一個方法在類定義內部被調用時,有一個可用的偽變量 $this。$this 是一個到主叫對象的引用(通常是該方法所從屬的對象,但如果是從第二個對象靜態調用時也可能是另一個對象)。Example #2 $this 偽變量的示例

<?php class A {function foo(){ if(isset($this)){echo ’$this is defined (’;echo get_class($this);echo ’)<br>’; }else{echo ’$this is not defined.<br>’; }} } class B {function bar(){ //如果開啟了E_STRICT這一行會有警告提示 A::foo();} } $a = new A(); $a -> foo(); //如果開啟了E_STRICT這一行會有警告提示 A::foo(); $b = new B(); $b -> bar(); //如果開啟了E_STRICT這一行會有警告提示 B::bar();?>

輸出結果:

$this is defined (A)$this is not defined.$this is defined (B)$this is not defined.2.new

要創建一個類的實例,必須使用?new?關鍵字。當創建新對象時該對象總是被賦值,除非該對象定義了構造函數并且在出錯時拋出了一個異常。類應在被實例化之前定義(某些情況下則必須這樣)。如果在?new?之后跟著的是一個包含有類名的字符串,則該類的一個實例被創建。如果該類屬于一個名字空間,則必須使用其完整名稱。Example #3 創建一個實例

<?php $instance = new SimpleClass(); //也可以這樣做: $className = 'Foo'; $instance = new $className(); //Foo()?>

在類定義內部,可以用?new self?和?new parent?創建新對象。當把一個對象已經創建的實例賦給一個新變量時,新變量會訪問同一個實例,就和用該對象賦值一樣。此行為和給函數傳遞入實例時一樣??梢杂每寺〗o一個已創建的對象建立一個新實例。Example #4 對象賦值

include_once(’class1.php’);$instance = new SimpleClass();$assigned = $instance;$reference = & $instance;$instance -> var = ’$assigned will have this value’;$instance = null; //$instance和$reference變成nullvar_dump($instance);var_dump($reference);var_dump($assigned);

輸出結果是:

NULLNULLobject(SimpleClass)#1 (1) { ['var']=> string(30) '$assigned will have this value' }

PHP 5.3.0 引進了兩個新方法來創建一個對象的實例:

class Test{ static public function getNew() {return new static; }}class Child extends Test{}$obj1 = new Test();$obj2 = new $obj1;var_dump($obj1 !== $obj2);$obj3 = Test::getNew();var_dump($obj3 instanceof Test);$obj4 = Child::getNew();var_dump($obj4 instanceof Child);

輸出結果:

bool(true)bool(true)bool(true)3.extends

一個類可以在聲明中用?extends?關鍵字繼承另一個類的方法和屬性。PHP不支持多重繼承,一個類只能繼承一個基類(與java一樣都是單繼承)。被繼承的方法和屬性可以通過用同樣的名字重新聲明被覆蓋。但是如果父類定義方法時使用了?final,則該方法不可被覆蓋??梢酝ㄟ^?parent::?來訪問被覆蓋的方法或屬性。當覆蓋方法時,參數必須保持一致否則 PHP 將發出?E_STRICT?級別的錯誤信息。但構造函數例外,構造函數可在被覆蓋時使用不同的參數。Example #6 簡單的類繼承

class ExtendClass extends SimpleClass{ //重寫父類的方法 function displayVar() {echo 'Extending class<br>';parent::displayVar(); }}$extended = new ExtendClass();$extended -> displayVar();

輸出結果:

Extending class14.::class

自 PHP 5.5 起,關鍵詞?class?也可用于類名的解析。使用?ClassName::class?你可以獲取一個字符串,包含了類?ClassName?的完全限定名稱。這對使用了?命名空間?的類尤其有用。Example #7 類名的解析

namespace NS{ class ClassName{} echo ClassName::class;}

輸出結果:

NSClassName

標簽: PHP
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
红桃视频国产一区| 亚洲女同中文字幕| 亚洲一区观看| 99精品视频精品精品视频| 国产中文欧美日韩在线 | 久久视频精品| 欧美日韩在线二区| 欧美日韩一区二区综合| 欧美1区免费| 夜夜嗨一区二区三区| 私拍精品福利视频在线一区| 久久婷婷亚洲| 在线成人直播| 国产成人a视频高清在线观看| 国产美女视频一区二区| 国产三级一区| 国产一区二区三区天码| 亚洲天堂久久| 日本一区免费网站| 国产一区二区三区天码| 午夜久久黄色| 日本成人精品| 麻豆一区二区三| 国产 日韩 欧美一区| 久久国产精品久久久久久电车| 日韩精品电影一区亚洲| 久久av日韩| 欧美亚洲国产激情| 欧美特黄视频| 亚洲精品第一| 激情中国色综合| 亚洲神马久久| 精品亚洲a∨| 麻豆久久精品| 国际精品欧美精品| 亚洲网址在线观看| 亚洲午夜天堂| 午夜久久av | 日本精品在线中文字幕| 视频在线观看国产精品| 久久久国产精品入口麻豆 | 婷婷色综合网| 国产精久久久| 视频一区欧美精品| 日韩不卡一区| 欧美天堂一区| 制服诱惑一区二区| 日韩天堂在线| 麻豆传媒一区二区三区| 亚洲精品第一| 日韩中文字幕91| 激情五月综合| 色爱综合网欧美| 久久精品国产99国产| 亚洲精品三级| 一区二区三区国产在线| 激情丁香综合| 国产黄大片在线观看| 麻豆精品在线视频| 国产精品欧美三级在线观看| 亚洲毛片在线| 亚洲欧美不卡| 在线亚洲观看| 国产亚洲欧洲| 亚洲男女自偷自拍| 久色成人在线| 蜜芽一区二区三区| 亚洲精品少妇| 91精品国产自产精品男人的天堂| 久久福利精品| 亚洲三级网址| 欧美日韩va| 精品一区二区三区在线观看视频| 免费一级欧美片在线观看网站| 国产日韩一区二区三区在线播放| 日本视频一区二区| 福利精品在线| 欧美日韩国产在线观看网站 | 91亚洲一区| 久久精品九色| 久久只有精品| 日韩在线二区| 欧美成人高清| 综合国产视频| 国产精品大片| 欧产日产国产精品视频| 国产亚洲精品久久久久婷婷瑜伽| 日本成人中文字幕| 不卡专区在线| 亚洲男人在线| 亚洲黄色网址| 亚洲精一区二区三区| 麻豆免费精品视频| 伊人精品视频| 欧美一区自拍| 日本不卡视频一二三区| 久久97久久97精品免视看秋霞| 电影亚洲精品噜噜在线观看| 欧美另类专区| 久久精品二区亚洲w码| 一区在线视频观看| 久久精品国产一区二区| 国产精品试看| 国产精品99一区二区三区| 日本大胆欧美人术艺术动态| 你懂的网址国产 欧美| 午夜精品亚洲| 久久精品资源| 综合激情五月婷婷| 天堂а√在线最新版中文在线| 久久精品观看| 国产精品亚洲产品| 丝袜脚交一区二区| 日韩免费看片| 免费在线日韩av| 欧美特黄一区| 亚洲美女久久精品| 欧美日本一区| 亚洲深深色噜噜狠狠爱网站 | 久久国产免费| 国产精品白丝av嫩草影院| 欧美日韩国产高清| 久久亚洲国产精品尤物| 欧美一级一区| 日韩精品视频网| 久久福利毛片| 久久aⅴ国产紧身牛仔裤| 亚洲香蕉网站| 91精品高清| 欧美精品一二| 久久精品观看| 国产精品久久久久av电视剧| 色婷婷综合网| 成人午夜国产| 国产精品7m凸凹视频分类| 久久久久久色| 久久精品超碰| 欧美交a欧美精品喷水| 日本中文字幕不卡| 日韩福利在线观看| 欧美激情福利| av资源亚洲| 在线看片福利| 欧美+亚洲+精品+三区| 久久亚洲图片| 久久精品凹凸全集| 国产精品专区免费| 五月天综合网站| 国产亚洲福利| 日本 国产 欧美色综合| 热久久久久久| 日韩一区欧美| 一区二区91| 91av一区| av免费不卡国产观看| 久久精品卡一| 日韩激情一区二区| 久久精品网址| 国产精品专区免费| 日韩精品欧美| 亚洲欧美日韩精品一区二区 | 久久精品国产久精国产爱| 国产精品亚洲一区二区三区在线观看| 国产亚洲一区二区手机在线观看| 国产精品99在线观看| 在线一区欧美| 国产精品99视频| 深夜日韩欧美| 欧美亚洲激情| 欧美日韩一区二区国产| 丝袜av一区| 国产伦理一区| 丝袜国产日韩另类美女| 麻豆久久久久久| 亚洲精品自拍| 久久一区二区中文字幕| 国产精品sss在线观看av| 亚洲一区二区毛片| 黄色在线观看www| 欧美精品中文字幕亚洲专区| 好看的av在线不卡观看| 福利一区二区| 久久不见久久见中文字幕免费| 国产亚洲精品久久久久婷婷瑜伽| 黄色网一区二区| 久久wwww| 国产精品久久久久77777丨| 免费在线看一区| 亚洲视频综合| 激情欧美日韩一区| 日韩精品dvd| 日本一区二区免费高清| 精品一区二区三区中文字幕 | 好看不卡的中文字幕| 日韩激情一区| 成人三级高清视频在线看| 美女久久久精品| 成人台湾亚洲精品一区二区| 国产日韩1区| 国产日韩中文在线中文字幕|