当前位置:
首页 >
self this
发布时间:2025/7/14
26
豆豆
面向对象编程(OOP,Object OrientedProgramming)现已经成为编程人员的一项基本技能。利用OOP的思想进行PHP的高级编程,对于提高PHP编程能力和规划web开发构架都是很有意义的。 class self_test { static $instance; public function __construct(){ self::$instance = 'instance';//静态属性只能通过self来访问 } public function tank(){ return self::$instance;//访问静态属性 } } $str = new self_test(); echo $str->tank(); 页面输出:instance [php] view plaincopy class self_test { static $instance; public function __construct(){ self::$instance = 'dell'; } static public function pentium(){ return self::$instance;//静态方法也可以继续访问静态变量,访问时需要加$ } public function tank(){ return self::pentium();//访问静态方法pentium() } } $str = new self_test(); echo $str->tank(); 页面输出:dell
2.self可以访问const定义的常量 [php] view plaincopyclass self_test { const NAME = 'tancy'; public function tank(){ return self::NAME; } } $str = new self_test(); echo $str->tank(); 页面输出:tancy
二.this 1.this可以调用本类中的方法和属性,也可以调用父类中的可以调的方法和属性,可以说除过静态和const常量,基本上其他都可以使用this联络 [php] view plaincopyclass self_test { public $public; private $private; protected $protected; public function __construct(){ $this->public = 'public'; $this->private = 'private'; $this->protected = 'protected'; } public function tank(){ return $this->public; } public function dell(){ return $this->private; } public function datesrt(){ return $this->protected; } } $str = new self_test(); echo $str->tank(); echo "</br>"; echo $str->dell(); echo "</br>"; echo $str->datesrt(); 页面输出: public
private
protected 一句话,self是引用静态类的类名,而$this是引用非静态类的实例名。
这里我主要谈的是this,self关键字之间的区别。从字面上来理解,分别是指这、自己。先初步解释一下,this是指向当前对象的指针(可以看成C里面的指针),self是指向当前类的指针。我们这里频繁使用指针来描述
一. self . 1.self可以访问本类中的静态属性和静态方法,可以访问父类中的静态属性和静态方法。用self时,可以不用实例化的 [php] view plaincopy
2.self可以访问const定义的常量 [php] view plaincopy
二.this 1.this可以调用本类中的方法和属性,也可以调用父类中的可以调的方法和属性,可以说除过静态和const常量,基本上其他都可以使用this联络 [php] view plaincopy
private
protected 一句话,self是引用静态类的类名,而$this是引用非静态类的实例名。
转载于:https://www.cnblogs.com/songyanan/p/9025740.html
《新程序员》:云原生和全面数字化实践50位技术专家共同创作,文字、视频、音频交互阅读总结
- 上一篇: python-包package
- 下一篇: 【剑指offer】面试题 5. 替换空格