PHP面向对象 静态延迟绑定static::

原创 2018年04月15日 18:35:06

self表示当前类,static::表示最后执行的类(也就是所谓的静态延迟绑定)

上代码:

<?php

class School{
	const COUNT = 56;
	public function showInfo(){
		echo self::COUNT;
		echo '<br/>' . static::COUNT;          //static::代表最后执行类,self代表当前类,parent代表父类
	}
}
class University extends School{
	const COUNT = 10000;
}
$school = new University;
$school -> showInfo();


PHP静态延迟绑定和普通静态效率简单对比

只是一个简单的小实验,对比了下 延迟绑定 和 非延迟的效率 延迟绑定主要就是使用 static 关键字来替代原来的 self ,但功能非常强大了 实验代码: class A { protecte...
  • zsjangel
  • zsjangel
  • 2014-06-29 10:56:51
  • 1271

php 后期静态绑定 static 关键字的另一种用法

自 PHP 5.3.0 起,PHP 增加了一个叫做后期静态绑定的功能,用于在继承范围内引用静态调用的类。 虽然也可以调用非静态方法,但是不会在运行时绑定。 static 不再只是简单的静态修饰关键字...
  • wang740209668
  • wang740209668
  • 2016-06-24 21:02:01
  • 1493

static延迟静态绑定的机制研究

对于PHP延迟静态绑定的具体分析理解
  • qq_28704425
  • qq_28704425
  • 2017-08-02 00:30:43
  • 152

理解 PHP 延迟静态绑定 (late static bindings)

简单理解PHP延迟静态绑定static::中的static其实是运行时所在类的别名,并不是定义类时所在的那个类名。这个东西可以实现在父类中能够调用子类的方法和属性。使用(static)关键字来表示这个...
  • gao_yu_long
  • gao_yu_long
  • 2017-12-29 16:52:28
  • 97

PHP静态延迟绑定:static

abstract class DomainObject {   private $group;   public function _construct() {     $this->group = ...
  • btsspu
  • btsspu
  • 2014-12-01 23:13:06
  • 252

php面向对象中static静态属性和静态方法的调用

这里分析了php面向对象中static静态属性和静态方法的调用。关于它们的调用(能不能调用,怎么样调用),需要弄明白了他们在内存中存放位置,这样就非常容易理解了。静态属性、方法(包括静态与非静态)在内...
  • tingliting
  • tingliting
  • 2016-03-02 14:00:12
  • 2522

PHP面向对象static修饰词的使用方法

之前在工作中经常遇到static修饰词,就在网上找资料,但是找到的资料都千篇一律,说的含糊其辞,感觉都是转载,抄过来的,没有一点创新,所以自己专门研究了一下,下面分享给大家,如果有什么不准确的,希望给...
  • tancy_weipj
  • tancy_weipj
  • 2016-06-30 22:16:46
  • 708

php 静态延迟绑定

我么听到这个名字一定很奇怪,其实不要想的那么负责,很简单的,我们先来简单了解下: 1,$this永远代表所在类的对象么? 不是,取决于方法是在哪里,怎么调用的! 2,self永远代表所在类么...
  • BenShuHuai
  • BenShuHuai
  • 2014-10-13 23:27:30
  • 704

php之static静态关键字

都知道声明为static的方法可以在类没有被实例化的时候调用 但是php有个很有趣的现象,静态调用非静态方法:php可以对没有声明static的方法实现静态调用。 然后看到了有人说没有加stati...
  • whd526
  • whd526
  • 2017-04-20 11:18:29
  • 552

static 静态方法 有什么优缺点 PHP中静态方法(static)与非静态方法的使用及区别

static方法是类中的一个成员方法,属于整个类,即使不用创建任何对象也可以直接调用! 静态方法效率上要比实例化高,静态方法的缺点是不自动进行销毁,而实例化的则可以做销毁。 静态方...
  • u010973051
  • u010973051
  • 2016-03-29 11:13:18
  • 15106
收藏助手
不良信息举报
您举报文章:PHP面向对象 静态延迟绑定static::
举报原因:
原因补充:

(最多只允许输入30个字)