面向对象3大特点:继承,封装,多模态
类的构造函数:构造函数可以生成不同的对象
类被实例化后构造函数会自动被调用
class StudentRoom():
def __init__(self): # 构造函数。
pass
student = StudentRoom() # 实例化
类变量、实例变量、实例方法、类方法、静态方法类方法和静态方法不能访问实例变量
在函数中不带self的是类方法或静态方法,不能访问实例变量
实例方法中默认参数self,类方法中默认参数cls,静态方法没有默认参数
类方法中用@classmethod 这种装饰器,静态方法中用@staticmethod 这种装饰器
class StudentRoom():
name = '1' # 类变量
sum = 0
# 有self则为 实例方法,代表实例。
def __init__(self, name, age):
# 构造函数初始化对象的属性
self.name = name # 实例变量,保存特征值
print(self.__class__.name) # 打印类变量。
@classmethod # 类方法。装饰器
def plus_sum(cls):
cls.sum += 1
print(cls.sum)
@staticmethod # 静态方法。装饰器
def add(x, y):
print('This is a static method&#