php面向对象之静态方法、属性和常量
程序员文章站
2022-03-15 15:22:01
...
这篇文章主要介绍了关于php面向对象之静态方法、属性和常量 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
静态方法、属性
定义
使用static
关键字定义;
声明类属性或方法为静态,即可以不实例化,直接访问。
注意:
1)静态属性,不可以通过实例化对象访问;
2)静态方法,可以;
3)静态方法,不可以使用$this
使用方法
:: 或 self::
具体如下所示:
访问位置 调用属性 调用方法 类的内部/外部 类名::属性名 类名::方法名 内部 self::属性名 self/类名::方法名
综合例子
<?php class MyClass { // 静态属性 public static $a = 'static'; // 静态方法 public static function func1() { echo '静态方法'; // 类的内部调用静态属性 echo MyClass::$a; echo self::$a; // 类的内部调用静态方法 MyClass::func2(); self::func2(); } // 试验静态方法调用另一个静态方法 public static function func2() { echo 'This is static function 2.'; } } // 类的外部调用静态属性、方法 echo MyClass::$a; MyClass::func1(); // 实例化后再调用 $me = new MyClass(); echo $me::$a; // 调用成功 // echo $me ->a; 调用失败 $me -> func1(); // 调用成功
常量
const
可以把类中始终不变的值,定义为常量。
常量的值,必须是一个定值。
调用方法,同static。
例子
class MyClass { public static $a = 'abc'; const NUM = 123; } echo MyClass::$a; echo '<br/>'; echo MyClass::NUM; echo '<br/>'; // 修改静态属性 MyClass::$a = 'def'; echo MyClass::$a; echo '<br/>'; // 修改常量 //MyClass::NUM = 234; 赋值失败
相关推荐:
以上就是php面向对象之静态方法、属性和常量的详细内容,更多请关注其它相关文章!
上一篇: php面向对象之封装
下一篇: 关于php构造函数的详细介绍
推荐阅读
-
PHP5.0对象模型探索之抽象方法和抽象类PHP学习网
-
PHP动态地创建属性和方法, 对象的复制, 对象的比较,加载指定的文件,自动加载类文件,命名空间,_PHP教程
-
php面向对象中static静态属性和静态方法的调用
-
python学习笔记之面向对象中的静态方法、类方法、属性方法总结
-
PHP5.0对象模型探索之抽象方法和抽象类
-
PHP static 静态变量和属性方法使用说明
-
php面向对象之构造函数作用与方法
-
php类和对象之protected与const属性_PHP教程
-
Java之反射第十八天( --反射----类的加载--获取对象属性( 成员变量和方法)-- 构造方法 )
-
PHP动态地创建属性和方法, 对象的复制, 对象的比较,加载指定的文件,自动加载类文件,命名空间