1 类的定义使用
1.1 定义类
class ClassName
'''类的帮助信息''' #类文档字符串
statement #类体
ClassName:用来指定类名,通常前两个单词首字母大写
‘’‘类的帮助信息’’’ :在创建类的对象的时候会显示该信息
statement:由类变量或成员,方法和属性等定义语句组成,也可以直接用pass语句代替
1.2 创建类的实例
ClassName(parameterlist)
ClassName:必选参数,指定具体的类
parameterlist:可选参数,当创建类时没有_init_()方法,或者_init_()方法里只有一个self参数时,可省略
1.3 创建__init__方法
def __init__(self,other):
other:其他参数,参数之间使用逗号分隔
1.4 创建类的成员并访问
1.4.1 创建实例方法并访问
def functionName(self,parameterlist):
block
functionName:方法名,一般小写字母开头
parameterlist:除self以外其他参数,参数间用逗号分隔
block:方法体,具体的代码块
instanceName.functionName(parametervalue)
instanceName:类的实例名
functionName:要调用的方法名
parametervalue:方法对应的实际参数
1.4.2 创建数据成员并访问
数据成员是指在类中定义的变量,即属性;根据定义位置分为类属性和实例属性
类属性
在类中定义,函数体外的属性。类属性可以在类的所有实例之间共享值,在所有的实例化对象中公用。
1.5 访问限制
通过属性或方法名前添加单下划线,双下划线,首位双下划线进行限制
1.5.1 首位双下划线
定义特殊方法,一般是系统定义名字,比如__init__()
1.5.2 单下划线开头
表示保护类型的成员,只允许类本身和子类进行访问,能通过实例名访问,不能使用“from module import *”语句导入
1.5.3 双下滑线开头
双下划线表示私有类型的成员,只允许定义该方法的类本身进行访问,不能通过类的实例进行访问,但是可以通过“类的实例名._类名__xxx”方式访问(添加类名)
2 属性
2.1 用于计算的属性
2.1.1 创建语法
@property
def methodname(self):
block
methodname:指定方法名,一般小写字母卡头,该名称作为最后的属性名
self:必要参数,表示类的实例
block:方法体,具体实现的功能,常以return语句结束,返回计算结果