假设我有 A1 和 A2 类 以及具有A1 / A2类型元素的 B 类。
现在我有一个班级 B'(B)(它继承自B)。 这个班级可以使用A1'和A2'而不是A1和A2 , 这个新类能以某种方式交换基类中的元素类型吗?
通常我会说这不可能,但因为这是关于python ......:P
答案 0 :(得分:4)
你的意思是这样吗?
class A1(object):
pass
class A1Child(A1):
pass
class A2(object):
pass
class A2Child(A2):
pass
class B(object):
a1_instance = None
a2_instance = None
def __init__(self):
self.a1_instance = A1()
self.a2_instance = A2()
class BChild(B):
def __init__(self):
self.a1_instance = A1Child()
self.a2_instance = A2Child()
b_instance = B()
print b_instance.a1_instance
print b_instance.a2_instance
bchild_instance = BChild()
print bchild_instance.a1_instance
print bchild_instance.a2_instance