继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

面向对象 (二)类属性

一句话儿的事
关注TA
已关注
手记 12
粉丝 1
获赞 1
属性

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

作用:所有类对象所共享
用法:权限控制符 static $params

访问方式
    类内
        self::属性名
        类名::属性名
    类外(针对你公共属性)
        类名::属性名
/**
* Desc: 静态变量
* User: zyy
* Date: 2019-12-08
* Time: 下午 23:43
*/
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__

类常量细节
    类常量都是公开,但是不需要修饰符,不能使用修饰符
    类常量必须为大写
    类常量必须赋值
    常量可以被继承
    常量可以是基本类型和数组类型,不能是对象
    常量可以在任意位置中使用

自己可以模拟实践,如何证明类常量细节中的点
打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP