phpbar.de logo

Mailinglisten-Archive

[php] Termini: überladen vs. implementieren

[php] Termini: überladen vs. implementieren

Sebastian Mendel lists at sebastianmendel.de
Don Okt 26 08:45:00 CEST 2006


Lutz Zetzsche wrote:
> Hallo Sebastian,
> 
> Am Donnerstag, 26. Oktober 2006 08:14 schrieb Sebastian Mendel:
>> da das ja schon geklärt, nur was zur verwendeten Termini:
>>
>> Yannik Hampe wrote:
>>> Hi @ll,
>>>
>>> ich beschäftige mich gerade etwas mit PDO.
>>> Ich wollte die execute-Funktion von PDOStatement nun etwas
>>> erweitern und habe versucht einfach eine Klasse von PDOStatement
>>> abzuleiten, die dann execute überläd.
>> Würde das dann nicht heisen: 'neu implementieren' oder so ähnlich?
>>
>> Überladen scheint mir hier auf jeden Fall der falsche Begriff, oder?
> 
> auf PHP bezogen vermutlich ja, weil Überladen hier wohl auf die Methode 
> __call() bezogen wird und __call auch etwas anders funktioniert, als 
> das Überladen in Java.
> 
> Verwendet man die Java-Terminologie, sind Überladen und Überschreiben zu 
> unterscheiden:
> http://www.galileocomputing.de/openbook/javainsel5/javainsel02_006.htm#Rxx747java02006040000AD1F02C237
> http://www.galileocomputing.de/openbook/javainsel5/javainsel06_006.htm#Rxx747java06006040001E71F019209
> 
> Überladen bedeutet in Java, daß in der Klasse oder in einer abgeleiteten 
> Klasse eine Methode mit demselben Namen, aber einer anderen 
> Parameterliste verwendet wird.
> 
> Überschreiben bedeutet in Java, wenn in einer abgeleiteten Klasse eine 
> Methode mit demselben Namen und derselben Parameterliste verwendet 
> wird.
> 
> Da Yannik folgendes Beispiel gebracht hat, wäre nach der 
> Java-Terminologie "Überschreiben" der korrekte Terminus:
> 
> 	class yPDOStatement extends PDOStatement
> 	{
> 		public function execute($ar)
> 		{
> 			//Hier Zeugs machen (logging, debugging, pre-processing und sowas)
> 			parent::execute($ar); //dann die alte execute-Funktion aufrufen.
> 		}
> 	}

abgesehen davon das ich nicht weiß was das mit Java zu tun hat und warum
Java hier immer als Referenz herhalten soll, etwas allgemein gehalterene
Beschreibungen für OO Programmierung wären mir lieber, bestätigt das
doch nur das Überladen hier der falsche Begriff ist und überschreiben
und neu implementieren ist jawohl auch das selbe.

http://de.wikipedia.org/wiki/%C3%9Cberladen
http://de.wikipedia.org/wiki/%C3%9Cberschreiben

aber Überschreiben scheint wohl der gängige Begriff für eine
neuimplmentierung einer Methode in einer abgeleiteten Klasse zu sein.




-- 
Sebastian Mendel

www.sebastianmendel.de

php::bar PHP Wiki   -   Listenarchive