php面向对象之操作符'::'的用法简述

什么是操作符“::”?

操作符“::”相比伪变量$this只能在类的内部使用来说更为强大。操作符“::”可以在没有任何声明任何实例的情况下访问类中的成员方法或成员变量。

操作符“::”语法:

使用"::"操作符的通用语法为:

关键字::变量名/常量名/方法名

 

注意事项:

这里的关键字不再是public、private、protected或者static等,而是以下三种情况:

(1)parent :可以调用父类中的成员变量、成员方法和常量;

(2)self:可以调用当前类中的静态成员和常量;

(3)类名:可以调用本类中的变量、常量和方法。

友情提醒:

有关静态变量(方法)的相关内容可以参见本站的文章:http://www.php.cn/php-weizijiaocheng-360326.html

上面简单的介绍了下操作符"::"的基本内容,下面我们通过一个简单的实例来更加形象具体的了解操作符“::”的用法。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

<?php

header("content-type:text/html;charset=utf-8");

class Hero{                                    //定义类

    const CHARACTER = '奥利安娜';               //定义常量,用关键字const

    function __construct()                     //父类中的构造函数

    {

        echo '5楼要玩中单'.Hero :: CHARACTER .'不给就送'; //输出常量

        echo '<br/>';

    }

}

 class I_Hreo extends Hero{                   //创建子类I_Hreo继承父类

     const ROLE = '亚索';                      //创建常量

     function __construct()                    //子类中创建构造函数

     {

         parent :: __construct();               //引用父类中的构造函数

         echo '4楼中单' . self :: ROLE . '贼6'; //子类中输出

     }

 }

$gamer = new I_Hreo();                             //实例化

 

实例解释:

在上述实例中,我们先创建了一个父类Hero,定义了常量,创建了构造函数,接着又创建了一个子类 I_Hreo去继承父类 Hreo,且在子类中也定义了常量。接下来就是重点了,我们引用父类中的构造函数。上面我们介绍了三种情况,parent :可以调用父类中的成员变量、成员方法和常量。这里我们调用的是父类中的方法,所以使用parent :: __construct()。接着,我们在子类的构造方法中输出子类中定义的常量,调用当前类的关键字,上面也介绍过,self:可以调用当前类中的静态成员和常量,所以这里我们用self :: ROLE,最后格式化,运行一下。

结果见下图:

5楼要玩中单奥利安娜不给就送

4楼中单亚索贼6

 

以上就是对操作符'::'用法的简单讲述,希望可以帮助到大家。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值