Class implement __del__() (destructor) - gọi khi instance sắp bị destroy. Dùng để cleanup non-memory resource.
Ví dụ
class Point:
def __init__(self, x=0, y=0):
self.x = x
self.y = y
def __del__(self):
class_name = self.__class__.__name__
print(class_name, "destroyed")
pt1 = Point()
pt2 = pt1
pt3 = pt1
print(id(pt1), id(pt2), id(pt3))
del pt1
del pt2
del pt3
Kết quả
3083401324 3083401324 3083401324 Point destroyed
Lưu ý: del chỉ giảm reference count. Object chỉ bị destroy khi ref count = 0. Không thể force destroy object nếu vẫn còn reference khác trỏ đến.