PHP 类Static 静态关键词


前言

本文就介绍了PHP类Static(静态)关键词的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、Static(静态)关键词

  • 声明类属性或方法为静态,就可以不实例化类而直接访问。
  • 静态属性不能通过一个类已实例化的对象来访问
  • 静态方法可以通过一个类已实例化的对象来访问
  • 由于静态方法不需要通过对象即可调用,所以伪变量 $this 在静态方法中不可用。
  • 静态属性不可以由对象通过 -> 操作符来访问。
  • 静态属性只能被初始化为文字或常量,不能使用表达式。
class MyClass1
{
    public static $my_var = 'PHP';
    public function fun1() {
        return self::$my_var;
    }
    public static function staticfun() {
        return self::$my_var;
    } 
}

print MyClass1::$my_var . "\n";         //不实例化,用范围解析操作符直接访问静态属性,输出PHP
print MyClass1::fun1() . "\n";          //不实例化,用范围解析操作符直接访问公共方法,输出PHP
print MyClass1::staticfun() . "\n";     //不实例化,用范围解析操作符直接访问静态方法,输出PHP

$foo = new MyClass1();
print $foo::$my_var . "\n";             //实例化,用范围解析操作符直接访问静态属性,输出PHP
print $foo::fun1() . "\n";              //实例化,用范围解析操作符直接访问公共方法,输出PHP
print $foo::staticfun() . "\n";         //实例化,用范围解析操作符直接访问静态方法,输出PHP

print $foo->my_var . "\n";              //实例化,不能用->直接访问静态属性,不输出PHP
print $foo->fun1() . "\n";              //实例化,用->直接访问公共方法,输出PHP
print $foo->staticfun() . "\n";         //实例化,用->直接访问静态方法,输出PHP

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值