- 类的所有实例方法都必须至少有一个名为self的参数,并且必须是方法的第一个形参。self参数代表对象本身,在类的实例方法中访问实例属性必须要以self为前缀,但是在外部通过类名调用对象方法则需要显示为self参数船传值。
- 实例属性一般是在构造函数__init__中定义的,定义和使用时必须以self为前缀。类属性是在类中所有方法之外定义的。实例属性属于实例对象,只能通过对象名访问,而类属性属于类,可以通过类名和对象名访问。
- Python中比较特殊的是,可以动态的为类和对象增加成员,这一点和许多面向对象的程序设计语言不同,是Python动态语言的一种体现。
- 私有属性是为了数据封装和保密而设置的属性,一般只在类的成员方法使用访问,Python支持一种特殊的方式来从外部访问类的私有成员。
- _xxx:这样的对象叫做保护成员,不能用‘from module import *’导入,只有类对象和子类对象能访问这些成员。
__xxx__:系统定义的特殊成员。
__xxx:类中的私有成员,只有类对象自己能访问,子类对象也不能访问,但在对象外部可以通过‘’对象名._类名__.xxx''这样的特殊方式来访问。Python中不存在严格意义上的私有成员。