删除了类属性,再创建对象,能访问类属性吗
class MyClass:
class_attr = "我是类属性"
def __init__(self):
self.instance_attr = "我是实例属性"
# 创建第一个对象
obj1 = MyClass()
print("obj1.class_attr:", obj1.class_attr) # 输出: 我是类属性
# 删除类属性
del MyClass.class_attr
# 创建第二个对象
obj2 = MyClass()
print("obj2.instance_attr:", obj2.instance_attr) # 输出: 我是实例属性
# 尝试访问已删除的类属性
try:
print("obj2.class_attr:", obj2.class_attr) # 这会引发 AttributeError
except AttributeError as e:
print("错误:", e) # 输出: 'MyClass' object has no attribute 'class_attr'
# 第一个对象也无法访问已删除的类属性
try:
print("obj1.class_attr:", obj1.class_attr) # 同样会引发 AttributeError
except AttributeError as e:
print("错误:", e) # 输出: 'MyClass' object has no attribute 'class_attr'