类成员:
# 字段
- 普通字段,保存在对象中,执行只能通过对象访问
- 静态字段,保存在类中, 执行
可以通过对象访问
也可以通过类访问
# 方法
- 普通方法,保存在类中,由对象来调用,self =》对象
- 静态方法,保存在类中,由类直接调用
- 类方法,保存在类中,由类直接调用,cls =》当前类
class FOO:
# 静态字段
static_field = "aaa"
def __init__(self):
# 普通字段
self.name = "a"
self.name_list = ["a"]
# 普通方法
def com(self):
print("com")
# 静态方法
@staticmethod
def sta():
print("sta")
# 类方法
@classmethod
def classmd(cla):
print("classmd")
# 属性,特性
@property
def per(self):
print("per")
return self.name_list
@per.setter
def per(self, val):
print(val)
self.name_list.append(val)
@per.deleter
def per(self):
print(self.name_list.pop())
obj = FOO()
obj.com() # 普通方法调用,通过对象调用
FOO.sta() # 静态方法调用,直接类调用
FOO.classmd() # 类方法调用,默认传类名
r = obj.per # 不加括号调用,跟字段调用一样,但是可以接收返回执行
print(r)
obj.per = "b"
del obj.per