[python] Konstruktor tridy, dedicnost

jvotroubek jvotroubek na seznam.cz
Úterý Srpen 19 15:02:44 CEST 2008


Ahoj.

Chtel jsem se zeptat...

class Base:
  def __init__(self):
    self.y = 2
  #enddef
#endclass

class Child(Base):
  def __init__(self):
    self.x = 1
  #enddef
#endclass

c = Child()
print c.x, c.y

... a kod vyhodi AttributeError.
Chapu-li to spravne, tak konstruktor tridy Child zastinil konstruktor tridy Base. Znamena to, ze se vzdycky vyvola nejvrchnejsi konstruktor? Jde nejak vyvolat konstruktory vsech trid, pres ktere se dedi?

Diky, Honza


Další informace o konferenci Python