成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

phptrait是什么意思

php trait是為類似PHP的單繼承語言而準(zhǔn)備的一種代碼復(fù)用機(jī)制,Trait為了減少單繼承語言的限制,使開發(fā)人員能夠自由地在不同層次結(jié)構(gòu)內(nèi)獨(dú)立的類中復(fù)用method。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計制作、網(wǎng)站建設(shè)、鎮(zhèn)沅網(wǎng)絡(luò)推廣、微信平臺小程序開發(fā)、鎮(zhèn)沅網(wǎng)絡(luò)營銷、鎮(zhèn)沅企業(yè)策劃、鎮(zhèn)沅品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供鎮(zhèn)沅建站搭建服務(wù),24小時服務(wù)熱線:13518219792,官方網(wǎng)址:jinyejixie.com

Trait

自 PHP 5.4.0 起,PHP 實(shí)現(xiàn)了一種代碼復(fù)用的方法,稱為 trait。

Trait 是為類似 PHP 的單繼承語言而準(zhǔn)備的一種代碼復(fù)用機(jī)制。Trait 為了減少單繼承語言的限制,使開發(fā)人員能夠自由地在不同層次結(jié)構(gòu)內(nèi)獨(dú)立的類中復(fù)用 method。Trait 和 Class 組合的語義定義了一種減少復(fù)雜性的方式,避免傳統(tǒng)多繼承和 Mixin 類相關(guān)典型問題。

Trait 和 Class 相似,但僅僅旨在用細(xì)粒度和一致的方式來組合功能。 無法通過 trait 自身來實(shí)例化。它為傳統(tǒng)繼承增加了水平特性的組合;也就是說,應(yīng)用的幾個 Class 之間不需要繼承。

Example #1 Trait 示例

<?php
trait ezcReflectionReturnInfo {
    function getReturnType() { /*1*/ }
    function getReturnDescription() { /*2*/ }
}
class ezcReflectionMethod extends ReflectionMethod {
    use ezcReflectionReturnInfo;
    /* ... */
}
class ezcReflectionFunction extends ReflectionFunction {
    use ezcReflectionReturnInfo;
    /* ... */
}
?>

優(yōu)先級 ?

從基類繼承的成員會被 trait 插入的成員所覆蓋。優(yōu)先順序是來自當(dāng)前類的成員覆蓋了 trait 的方法,而 trait 則覆蓋了被繼承的方法。

Example #2 優(yōu)先順序示例

從基類繼承的成員被插入的 SayWorld Trait 中的 MyHelloWorld 方法所覆蓋。其行為 MyHelloWorld 類中定義的方法一致。優(yōu)先順序是當(dāng)前類中的方法會覆蓋 trait 方法,而 trait 方法又覆蓋了基類中的方法。

<?php
class Base {
    public function sayHello() {
        echo 'Hello ';
    }
}
trait SayWorld {
    public function sayHello() {
        parent::sayHello();
        echo 'World!';
    }
}
class MyHelloWorld extends Base {
    use SayWorld;
}
$o = new MyHelloWorld();
$o->sayHello();
?>

以上例程會輸出:

Hello World!

Example #3 另一個優(yōu)先級順序的例子

<?php
trait HelloWorld {
    public function sayHello() {
        echo 'Hello World!';
    }
}
class TheWorldIsNotEnough {
    use HelloWorld;
    public function sayHello() {
        echo 'Hello Universe!';
    }
}
$o = new TheWorldIsNotEnough();
$o->sayHello();
?>

以上例程會輸出:

Hello Universe!

更多相關(guān)知識,請?jiān)L問PHP中文網(wǎng)!

分享標(biāo)題:phptrait是什么意思
URL分享:http://jinyejixie.com/article22/cheojc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)虛擬主機(jī)、建站公司、標(biāo)簽優(yōu)化、企業(yè)網(wǎng)站制作做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)
儋州市| 绍兴市| 汾阳市| 涞水县| 玛曲县| 上蔡县| 鱼台县| 增城市| 稻城县| 咸丰县| 鱼台县| 北宁市| 绵阳市| 阿拉善右旗| 汾阳市| 剑阁县| 东乌珠穆沁旗| 满城县| 开封市| 民丰县| 巢湖市| 内江市| 灵台县| 五原县| 溆浦县| 萨迦县| 顺平县| 鹤岗市| 昭觉县| 北流市| 同仁县| 平昌县| 珠海市| 溧阳市| 南宫市| 洱源县| 五华县| 兴山县| 如东县| 酉阳| 邵阳市|