【PHP】PHP中static和self的区别
来源:互联网 发布:太极线指标软件 编辑:程序博客网 时间:2024/05/24 07:08
面试被问到了,无奈,没有答上来,特此总结一下。
使用 self:: 或者 __CLASS__
对当前类的静态引用,取决于定义当前方法所在的类:
使用 static:: 不再被解析为定义当前方法所在的类,而是在实际运行时计算的。也可以称之为“静态绑定”,因为它可以用于(但不限于)静态方法的调用。
静态绑定是PHP 5.3.0,增加的一个功能 用于在继承范围内引用静态调用的类
简单通俗的来说,
self就是写在哪个类里面, 实际调用的就是这个类.
static代表使用的这个类, 就是你在父类里写的static,然后被子类覆盖,使用的就是子类的方法或属性
<?phpclass Person{ public static function name() { echo "111"; echo "<br />"; } public static function callself() { self::name(); } public static function callstatic() { static::name(); }}class Man extends Person{ public static function name() { echo "222"; echo "<br />"; }}Man::callself(); // output: 111Man::callstatic(); // output: 222?>
1 0
- PHP中 static 和 self 的区别
- PHP 中 static 和 self 的区别
- PHP中SELF和STATIC的区别
- 【PHP】PHP中static和self的区别
- 关于PHP中static和self的区别
- PHP中new static() 和 new self() 的区别
- PHP中this,self和static的区别
- PHP中new self()和new static()的区别探究
- PHP类中static 和self的使用区别
- PHP中new self()和new static()的区别
- PHP 中 new static 和 new self 的区别
- php中self与static的区别
- PHP 中 this self static 的区别
- php类中 self parent static的区别
- PHP中new static()与new self()的区别
- PHP中new static()与new self()的区别
- PHP中static 跟self的使用区别
- PHP中static关键字以及与self关键字的区别
- 栈
- 0418
- ThinkPHP之多层MVC
- unlocked_ioctl和compat_ioctl
- kotlin与Spring, 默认类,方法,property为final带来的问题--依赖注入失效,NullPointerException异常
- 【PHP】PHP中static和self的区别
- java jvm详解
- (38):检查参数的有效性
- 奇异值分解SVD
- 代码模块化管理和提升web性能的知识点
- C#学习之----委托
- [jFinal]前后端数据交互技巧(一)
- JAVA Eexcel导入导出工具类
- golang起一个http服务,mac交叉编译并在linux上起服务