V站笔记
双冒号操作符即作用域限定操作符Scope Resolution Operator可以访问静态、const和类中重写的属性与方法。
在类定义外使用的话,使用类名调用。在PHP 5.3.0,可以使用变量代替类名。
Program List:用变量在类定义外部访问
<?phpclass Fruit { const CONST_VALUE = 'Fruit Color';}$a = 'Fruit';echo $a::CONST_VALUE; ?> Program List:在类定义外部使用:: <?phpclass Fruit { const CONST_VALUE = 'Fruit Color';}class Apple extends Fruit { public static $b = 'Red'; public static function doubleColon() { echo parent::CONST_VALUE . "\n"; echo self::$b . "\n"; }}Apple::doubleColon(); ?> 程序运行结果: Fruit Color Red Program List:调用parent方法 <?phpclass Fruit { protected function showColor() { echo "Fruit::showColor()\n"; }}class Apple extends Fruit { ?> 程序运行结果: Fruit::showColor() Apple::showColor() Program List:使用作用域限定符 <?php class Apple { public function showColor() { return $c->color; } } class Banana { public $b; public function __construct() { $c->color = "Banana is yellow"; } public function GetColor() { return Apple::showColor(); } } $d = new Banana; echo $d->GetColor(); ?> 程序运行结果: Banana is yellow Program List:调用基类的方法 <?php class Fruit { static function color() { return "color"; } static function showColor() { echo "show " . self::color(); } } class Apple extends Fruit { static function color() { return "red"; } } Apple::showColor(); ?>
程序运行结果: show color
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。