PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Virtuelle Methoden in Perl



tr0nix
20.11.2006, 15:23
Hallo zusammen

Wie mache ich virtuelle Methoden in Perl?

Ich habe in Klasse A eine Methode logText().
Wenn ich in Klasse B, welche sich (dank @ISA) aus Klasse A vererbt, eine Methode logText() verwende nutzen Klasse A - Methoden immernoch A::logText und nicht B::logText.

Hab gegoogelt aber nirgens was schlaues gefunden :o(.

.mike.
20.11.2006, 17:44
wieso stellst du die frage eigtl in mehrern foren?

siehe forum.perl-community.de

tr0nix
21.11.2006, 10:04
Ist doch legitim.. solange es nicht im selben Forum ist. Ich brauchte eine schnelle Antwort da dieses Problem mich in meinem Vorhaben behinderte.

hwj
21.11.2006, 21:48
Verstehe ich Dich richtig, Du hast:


package A;
...
sub logText {
print "A.logText\n";
}

und


package B;
use A;
@ISA = qw(A);

...
sub logText {
print "B.logText\n";
}


und wenn Du jetzt:


my $b = B->new();
$b->logText();

ausführst, druckt das "A.logText" ? Bei mir erscheint dann wie erwartet "B.logText" ...

Heiko