PHP 面向对象 (二)类属性

属性

数据类型

  1. 四种标量类型 boolean(布尔型) integer(整型) float(浮点型) string(字符串)
  2. 三种复合类型 array(数组) object(对象) callable(回调函数)
  3. 特殊类型 null resource(资源)

静态属性

作用:所有类对象所共享

用法:权限控制符 static $params

访问方式
  • 类内

    self::属性名

    类名::属性名

  • 类外(针对你公共属性)

    类名::属性名

实践

<?php
class Student{
    public static $country;

    function __construct($country)
    {
        self::$country = $country;//类内通过 self访问
    }

    public function getCountry()
    {
        echo Student::$country;echo "<br/>";//类内也可以通过 类名访问
    }
}

$stu1 = new Student('中国');
echo Student::$country;echo "<br/>"; //类外,通过类名访问
$stu1->getCountry();
$stu2 = new Student('俄罗斯'); //修改了静态属性
echo Student::$country;echo "<br/>";
$stu1->getCountry(); //对象$stu1 的静态属性也跟着改变(类静态变量 被所有类对象 所共享)

类常量

const APP = 'this is app';

作用: 固定不变的属性,被所有对象所共享,不能用权限控制符修饰

访问方式
  • 类内

    self::常量

    类名::常量

  • 类外(针对你公共属性)

    类名::常量

魔术常量
__FILE__
__DIR__
__LINE__
类常量细节(自己可以模拟实践,如何证明类常量细节中的点)
  1. 类常量都是公开,但是不需要修饰符,不能使用修饰符
  2. 类常量必须为大写
  3. 类常量必须赋值
  4. 常量可以被继承
  5. 常量可以是基本类型和数组类型,不能是对象
  6. 常量可以在任意位置中使用

复制代码,即可运行。 谢谢你的浏览,如有错误,欢迎指正哈!!!

本作品采用《CC 协议》,转载必须注明作者和本文链接
写的不好,就当是整理下思绪吧。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!