Zitat:
Zitat von urvater
Irgendwo glaube ich gelesen zu haben, daß man ein Interface als Schnittstelle benutzt.
|
korrekt - da man so die kommunikation zwischen klassen über (im interface notierte) methoden beschreiben kann. ein gutes beispiel findet sich
hier.
Zitat:
Zitat von urvater
Ich habe da ein kleines Problem den Sinn bzw. die korrekte Benutzung von einem bzw. mehreren Intrefaces zu verstehen.
|
möglicherweise erwartest du ganz einfach zu viel von einem interface - es soll leute geben, die die dinger für überflüssig halten und lieber auf eine abstrakte klasse zurück greifen, da man
mehr machen kann.
eine klasse, die ein (oder mehrere) interface(s) einbindet, muss alle methoden implementieren, die im jeweiligen interface notiert sind. wie die methode arbeitet, interessiert dabei allerdings nicht - hauptsache, die methode taucht in der klasse auf und besitzt dieselbe signatur.
das (verkürzte) beispiel aus dem php-manual:
PHP-Code:
<?php
interface iTemplate
{
public function setVariable( $name, $var );
public function getHtml( $template );
}
class BadTemplate implements iTemplate
{
public function setVariable( $name, $var )
{
// was hier passiert, ist hinsichtl. des interfaces völlig egal
}
}
?>
der code produziert einen
fatal error, da die klasse
BadTemplate nicht alle methoden implementiert, die im interface notiert sind.
cx