您的位置:首页 > 编程语言 > PHP开发

PHP延迟绑定练习

2016-08-14 17:47 295 查看
<?php
/*延迟绑定复习
父类:高级动物
年龄:1
腿:4
哭:呜呜
方法:t1  t2
*/
class Animal {
const age = 1;
public static $leg = 4;

public static function cry() {
echo '呜呜<br />';
}

public static function t1() {
self::cry();
echo self::age,'<br />';
echo self::$leg,'<br />';
}

public static function t2() {
static::cry();
echo static::age,'<br />';
echo static::$leg,'<br />';
}

}

class Human extends Animal {
public static $leg = 2;

public static function cry() {
echo '哇哇<br />';
}
}

class Stu extends Human {
const age = 16;

public static function cry() {
echo '嘤嘤<br />';
}
}

Stu::t1();
/*自身没有T1方法,从父类中寻找t1方法,人类没有、一直找到高级动物类!执行父类的t1方法,self所以执行父类自身的属性!结果:呜呜,1,4*/
Stu::t2();
/*自身同样没有t2方法,到父类中寻找,父类的方法是执行静态绑定属性(执行运行程序绑定)!所以执行运行程序的那一刻绑定的属性!如果没有父类中寻找!答案:嘤嘤,16,2*/
原文博客:开拓者博客
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: