Thread Vererbung (2 answers)
Opened by Sven_123 at 2012-11-08 12:01

moritz
 2012-11-08 16:24
#163177 #163177
User since
2007-05-11
923 Artikel
HausmeisterIn
[Homepage]
user image
2012-11-08T11:01:21 Sven_123
1. Kann ich auf irgendeine Weise auf in der BUILD-Routine der Kindklasse auf Attribute der Elternklasse zugreifen?


Nur, wenn es einen Accessor in der Elternklasse gibt. Private Attribute sind Privat, daran aendert sich auch nichts, wenn du von einer Klasse erbst.

Code: (dl )
1
2
3
4
5
6
7
8
use v6;
class Pet {
has $.legs is rw = 4;
}

class Spider is Pet {
submethod BUILD { self.legs = 6 }
}


Oder du gibst von vornherein die richtigen Argumente mit:

Code: (dl )
1
2
3
4
5
class Spider is Pet {
method new(*%opts) {
self.bless(*, |%opts, legs => 6);
}
}

View full thread Vererbung