php类中的self_PHP面向对象中self与$this的区别

本文详细介绍了面向对象编程中$this与self关键字的区别和使用场景。$this用于引用对象实例的成员,而self则用于引用类的静态成员。在静态方法中,不能使用$this,但可以通过self::访问静态属性和方法。同时,文章提醒读者在访问常量和静态成员时需要注意使用正确的操作符。
摘要由CSDN通过智能技术生成

1)self代表类; $this代表对象

2)静态成员与静态方法是给类调用的, 不是给$this调用的

3)能用$this的地方一定可以self,能用self的地方不一定能用$this

4)静态方法中一定不能使用$this

类外

访问const(常量)或static(静态)修饰的成员属性或静态方法, 必须使用 :: 操作符, 除此之外的成员必须使用操作符 ->

类内

访问const(常量)或static(静态)修饰的成员, 必须使用 self:: 操作符, 除此之外的成员必须使用操作符 $this->class ziruchu

{

public $name = '自如初';

public static $age = 1;

public function getMySelf()

{

// 输出 自如初

echo $this->name;

// 输出 1

echo self::$age;

// 输出 1

echo $this::$age;

}

public static function getStaticMethod()

{

echo self::$age;

// echo $this->name;// 报错

}

}

// 访问静态成员属性

echo ziruchu::$age;

ziruchu::getStaticMethod();

// 通过实例化对象访问

$zi = new ziruchu();

echo $zi->name;

$zi->getMySelf();

$zi->getStaticMethod();

转载:感谢您对自如初博客网站的认可,所有文章均属原创文章,技术类文章转载请注明出处,“自如初博客”;文学类文章请带文本链接地址,否则视为侵权!

很赞哦!(6)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值