制心一处,无事不办.
**触发机制:当前类实例化的对象被销毁时,自动触发
作用:关闭一些打开的资源
注意:对象被销毁时触发了这个方法,而不是这个方法销毁了对象
对象会在哪些情况下被销毁?
1:程序执行完毕,内存中所有的资料都会被销毁
2:手动删除 del 对象
3:对象不在被引用时,会自动销毁**
#定义一个类,完成一个日志的记录
#调用这个对象的时候,传递一个日志信息
#这个对象会创建一个文件,开始写入,并在最后关闭这个文件
import time
class writeLog():
#成员属性
#日志文件的名称
_filename = ‘2021-10-16’
# 文件的路径
fileurl = ‘’
#初始化,打开文件
def _init(self):
_#完成文件的打开<br /> _self.fileobj = open(self.fileurl+self.filename,**'a+'**,encoding=**'utf-8'**)<br /> _#写日志的方法<br /> _**def **log(self):<br /> res = input(**'请输入日志的内容:\n'**)<br /> self.fp.write(res)<br /> _#析构方法<br /> _**def **__del__(self):<br /> _#在对象被销毁时,关闭在初始化方法中打开的文件对象<br /> _print(**'析构方法触发了'**)<br /> self.fileobj.close()
_#实例化对象
_l = writeLog()
l.log()