①两个下划线开始的属性:不能在外部使用或访问,需通过公开方法(接口)访问。
②其他属性:可以在外部使用或访问。
③两个下划线开始的方法:不能在外部使用或访问,其仅在类内部使用。
④其他方法:即公开的方法,可以在外部使用或访问。
- /*
- 即可示意为下面的关系链:
- sampleNum
- sampleGetData(self) <-> __sampleFun(self) <-> __sampleData
- 说明:
- sampleNum是可以直接访问的数据。
- __sampleData是内部数据,__sampleFun()看作一个仅在内部使用的过渡接口,sampleGetData()是与外部的接口。
- */
⑤两个下划线开始且两个下划线结束的方法:__init__(self)。特定情况下触发的函数方法。(因为其也以两个下划线开始,所以也不是直接的外部接口,不能直接访问)
例如:
- # Attention: 定义类中的方法是显含self,调用时隐含self。
- MyObject = MyClass() # 触发__init__(self)方法。
- MyObject + 2 # 触发__add__(self,n)方法。
⑥对于内置对象,我们help(int)和help(str)作为参考对比,可以看到:
- __int__(...)
- x.__int__() <==> int(x)
- __str__(...)
- x.__str__() <==> str(x)
阅读(808) | 评论(0) | 转发(0) |