7.6 范圍解析操作符

范圍解析操作符 :: 雙冒號(hào),可以用來(lái)訪問(wèn)類的靜態(tài)屬性和靜態(tài)方法以及常量。

在類的外部使用 雙冒號(hào)

class Foobar{
    static $hello = 'world';
}
// 輸出 world
echo Foobar::$hello;

在類的內(nèi)部使用 雙冒號(hào)

// 類
class Foobar{
    static $hello = 'world';
    public function byStatic(){
        echo static::$hello;
    }
    public function bySelf(){
        echo self::$hello;
    }
    public function byThis(){
        echo $this::$hello;
    }
}
// 實(shí)例化
$foobar = new Foobar();
// 輸出 world
$foobar->byStatic();
// 輸出 world
$foobar->bySelf();
// 輸出 world
$foobar->byThis();

調(diào)用父類的方法

// 父類
class Foo{
    public function __construct(){
        echo 'Foo::__construct';
    }
}
// 子類
class Bar extends Foo{
    public function __construct(){
        // 調(diào)用父類的方法
        parent::__construct();
        echo 'Bar::__construct';
    }
}

綜合例子:

// 父類
class Foo{
    public static function three(){
        echo "a";
    }
}
// 子類
class Bar extends Foo{
    static $one = '1';
    const TWO = 2;
    public static function three(){
        // 調(diào)用父類的方法
        parent::three();
        echo 'b';
    }
}

// 靜態(tài)方法
Bar::three();
// 靜態(tài)屬性
echo Bar::$one;
// 常量
echo Bar::TWO;

// 最終輸出:ab12
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容