在php中self与$this的分别

 我来答
大野瘦子
高粉答主

2018-12-16 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:1227
采纳率:100%
帮助的人:32.6万
展开全部

1、意思上的区别

self代表类,$this代表对象(self是引用静态类的类名,而$this是引用非静态类的实例名)

2、用法上的区别

能用$this的地方一定使用self,能用self的地方不一定能用$this。

扩展资料:

Python中self用法详解

1、以Student类为例,在Python中,定义类如下:

class Student(object):

pass

(Object)表示该类从哪个类继承下来的,Object类是所有类都会继承的类。

2、实例:定义好了类,就可以通过Student类创建出Student的实例,创建实例是通过类名+()实现:

student = Student()

3、由于类起到模板的作用,因此,可以在创建实例的时候,把我们认为必须绑定的属性强制填写进去。这里就用到Python当中的一个内置方法__init__方法,例如在Student类时,把name、score等属性绑上去:

class Student(object):

def __init__(self, name, score):

self.name = name

self.score = score

loveSoulMan
2018-08-04
知道答主
回答量:2
采纳率:0%
帮助的人:1622
展开全部
默认public下,静态变量只有使用::方式才可以访问 ,非静态变量::方式不能访问,静态或者非静态的方法都可以被->或::方式访问。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kennethb
2010-06-24 · TA获得超过254个赞
知道小有建树答主
回答量:75
采纳率:0%
帮助的人:90.3万
展开全部
一句话,self是引用静态类的类名,而$this是引用非静态类的实例名。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
JovenShao
2010-06-24 · TA获得超过514个赞
知道小有建树答主
回答量:1161
采纳率:80%
帮助的人:608万
展开全部
self在对象中自己调用自己使用
$this在实例化后使用$this方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
剪辑客
2019-01-24 · 更多经典影视精彩镜头尽在剪辑客……
剪辑客
采纳数:825 获赞数:1656

向TA提问 私信TA
展开全部
$this,self,parent三个关键字从字面上比较好理解,分别是指这、自己、父亲。
$this 是指向当前对象的指针,$this表示当前所在类对象这个很不明确,$this取决于自己所在方法被调用时的执行环境,当前方法在哪个对象环境下执行,该方法的$this就表示该对象,针对还原一层层到最初始的方法的对象,说得更通俗一点,$this是指向当前对象的指针。
self 是指向当前类的指针;self是指向类本身,也就是self是不指向任何已经实例化的对象,一般self使用来指向类中的静态变量。假如我们使用类里面静态(一般用关键字static)的成员,我们也必须使用self来调用。还要注意使用self来调用静态变量必须使用:: (域运算符号)
parent是指向父类的指针。parent是指向父类的指针,一般我们使用parent来调用父类的构造函数。
相关实例请参考:https://panxu.net/article/8366.html
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式