PHP-面向对象-类常量设置-2-2-1

版权声明:本文为郝云原创文章,未经郝云允许不得转载。 https://blog.csdn.net/haoyunyun888/article/details/81987370

掌握清楚2个如何?

如何设置一个常量,在类中

如何访问一个常量,在类外

类常量的定义

定义在类里面的常量。

类常量必须使用const关键字定义

const 常量名 = 值;

常量与对象的关系

常量不能通过对象访问

类常量的访问

类常量属于类,而不属于对象。对象是不能访问类常量。

常量的访问必须通过类来实现:

类名::常量名

:: 叫做范围解析操作符

在类的内部经常性的使用类来访问类中的成员,所在类的内部使用类进行访问的时候,有一个类似$this代表对象的关键字:self,自己的意思,代表当前类名

<?php
class person{
    //如何定义一个常量
    //定义规则:关键词 const  常量名(大写)="常量对于的值"
    const NAME='haoyun';
    public function getUserName(){
        return self::NAME;
    }
}
//如何访问一个常量(类外部访问)
//访问规则:类名::常量名
//::代表什么意思?   叫做范围解析操作符
echo person::NAME;
$person=new person();
echo $person->getUserName();

   self与$this的区别

  1. self代表类,$this代表对象
  2. self访问类内部的常量和静态属性和静态方法,$this访问对象的属性和普通方法
  3. self必须配合范围解析操作符(::)才能生效,$this代表对象,对象本来就是一种数据类型,所以$this可以单独被打印。
  4. 能用$this的地方,一定可以使用self,但是能使用self的地方不一定可以使用$this
  5. 非静态的属性和方法均用对象($this)访问,静态的方法和属性或常量均用类(self)来访问

猜你喜欢

转载自blog.csdn.net/haoyunyun888/article/details/81987370