Thread OOP Verständnisproblem!
(22 answers)
Opened by kolibri250 at 2019-01-20 00:13
Das bless $self,ref($class)||$class; wird interessant, wenn Du new() auf ein bestehendes Objekt aufrufst.
Also: Code (perl): (dl
)
1 2 3 4 5 6 7 # 1. initialisiere ein neues Objekt der Klasse "Foo" my $object = Foo->new(); # vs. # 2. initialisiere ein neues Objekt der gleichen Klasse wie $object eines ist my $object2 = $object->new(); Wird der Klassenname verwendet (wie in 1.), liefert ref($class) einen Leerstring, was als "unwahr" interpretiert wird, und der übergebene Klassenname wird für das bless() verwendet. Im zweiten Fall liefert ref($class) den Klassennamen der aufrufenden Objektes und bless verwendet diesen. Das ist hilfreich, wenn Du beispielsweise Objekte gleichen Typs herstellen willst. Bei mir landet das automatisch immer in der new()-Routine; ist eine Gewohnheit mittlerweile bei mir... meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen! |