Archiv verlassen und diese Seite im Standarddesign anzeigen : Objektorientierte Programmierung in PHP - was ist ::
Methoden eines Objektes werden ja so aufgerufen
$obj = new Foo();
$obj->setFoo("bar");
Dann gibt es aber auch
Foo::setFoo("bar");
Was ist das? Ist das das Gleiche wie static Aufrufe in Java?
MadMan2k
2005-08-23, 18:17:38
ja
BTW: http://www.php.net/manual/de/language.oop5.paamayim-nekudotayim.php
clm[k1]
2005-08-23, 18:57:10
Methoden eines Objektes werden ja so aufgerufen
$obj = new Foo();
$obj->setFoo("bar");
Dann gibt es aber auch
Foo::setFoo("bar");
Was ist das? Ist das das Gleiche wie static Aufrufe in Java?
So ruft man statische methoden einer klasse auf.
clm[k1]
Expandable
2005-08-23, 22:23:26
Ja. Wenn Du Foo::setFoo() aufrufst, kannst Du innerhalb der Methode setFoo() nicht auf $this-> zugreifen, weil der Aufruf statisch ist. In PHP5 sollte die Methode deswegen mit dem Schlüsselwort static gekennzeichnet sein.
z3ck3
2005-08-23, 22:41:28
Ich hab da ma ne Frage dazu: Warum macht man dann überhaupt Sachen mit :: und nicht immer mit ->? Denn wenn ich inenrhalb einer Klasse nicht auf $this-> zugreifen kann wirds doch zimlich langweilig und das ding ist nur noch eine Funktion unter vielen, nur halt innerhalb einer Klasse.
MadMan2k
2005-08-24, 00:23:49
Singleton z.B.
vBulletin®, Copyright ©2000-2024, Jelsoft Enterprises Ltd.