话不多说,上代码,看结果。
print('1、概念#############################################')
# 生命周期
# 指的是一个对象, 从诞生到消亡的过程
# 当一个对象被创建时, 会在内存中分配相应的内存空间进行存储
# 当这个对象不再使用, 为了节约内存, 就会把这个对象释放
# 涉及问题
# 如何监听一个对象的生命过程?
# Python是如何掌控一个对象的生命?
# 监听对象生命周期
# __new__方法 创建一个对象时, 用于给这个对象分配内存的方法
# 通过拦截这个方法, 可以修改对象的创建过程 比如:单例设计模式
# __init__方法
# 每个对象实例化的时候,都会自动执行这个方法 可以在这个方法里面,初始化一些实例属性
# __del__方法
# 当对象被释放的时候调用这个方法 可用于在这个方法中清理资源
class A:
def __init__(self):
print('init')
self.aa = 12
def __del__(self):
print('del')
a = A()
print(a)
print(a.aa)
del a
print('class B#####')
class B:
def __new__(cls, *args, **kwargs):
print('拦截'