什么是析构函数 就是实例被销毁的时候自动执行
也就是最后执行的 什么时候用到析构函数
关闭数据库 和关闭游标 因为他会执行完程序后自动执行
私有方法
类
一个模板,一个模型。
对象
根据模板造出来的具体的东西
实例
根据模板造出来的具体的东西
实例化
把模板做成具体东西的过程。
构造函数:
1、类在实例化的时候,自动执行的函数
2、如果要使用这个类,必须要传一些参数的时候参数写在构造函数里面
析构函数:
实例被销毁的时候自动执行的函数。
私有:
只能通过self调用,不能能过实例调用。
只能在类里面用,类外面不能用
自己定义的方法和变量,如果是__开头,就是私有的
类变量
#类方法 人要有国籍
class Cerson():
contry='china'
def __init__(self,name):
self.name=name
self.contry=contry
print(self.name)
ces=Cerson('dong')
如果增加一个类变量咋办呢 self.这个定义的就是实例变量
可以这样更改
#类方法 人要有国籍
class Cerson():
contry = 'china'
def __init__(self,name):
self.name=name
print(self.name)
def run(self):
print(self.contry)
ces=Cerson('dong')
ces.run()#现在内部找,找不到去外面找
contry='china'类变量
类方法
公共的方法,直接可以通过类名来调用
不需要实例化,通过实例也可以调用
@classmethod #定义
def cess(cls): 类方法
print(cls.contry)
ces=Cerson('dong')
ces.run()#现在内部找,找不到去外面找
Cerson.cess()#调用类方法 直接调用
ces.cess() #也可呀使用实例化的名字调用
静态方法
和一个普通方法没有任何区别 和类也没有关系,只是定义在类里
@staticmethod
def suangua():#定义方法静态谁都能用它,他不能用别人
print('你好')
def run(self):#实例方法
print(self.contry)
属性方法 你看着是一个变量 其实他是一个函数方法
@property
def age(self):#这个函数不能有参数,需要返回值
print(self.name+'测试')
return self.name+'sssasa'
私有方法总结
只能通过self 调用,不能通过实例调用
只能在类里面用,不能在类外面用
自己定义的方法和变量如果开头是————就是私有的