4
是否有可能不发生重写?例如:具有相同名称的子类变量
class A:
def __init__(self, name):
self.name = name
class B(A):
def __init__(self, name):
A.__init__(self, name)
self.name = name + "yes"
是否有B类任何方式self.name
从为A类的是独立的,或者是强制要求使用不同的名称?
我不确定你的问题是什么。你在这里有什么是有效的代码,除非你询问B类的_instances_是否可以有两个'self.name'值。这个问题的答案是否定的。 – 2012-08-13 00:52:36
@ g.d.d.c这正是我所要求的;无论B类的实例是否可以拥有自己的名称值,同时仍保留其超类的名称。感谢您的确认! – idlackage 2012-08-13 00:57:02
关于OP示例的新手问题:在B .__ init__中,他调用A .__ init__,而不是我期望的,self .__ init__。前者设置* class *变量名称,正确的?然后,它应该是相同的,除非一个实例有__init __...的新定义? – 2012-09-07 17:51:20