| | | | |
| | |
| Erfahrener Benutzer | Hallo und guten Abend Gemeinde, ich habe da mal ein Frage an euch. Und zwar ich weis was ein Interface ist und zu was es da ist. Nun habe ich mir mal zur Übung ein kleines Vorhaben gesetzt was ich immer mehr ausbauen will. Das ganze Ziel heist Fahrzeug. Ein Fahrzeug kann ein Fahrrad, ein Auto, ein LKW oder auch ein Bus sein. So also dachte ich mir ich überlege mir welche absoluten Grundeigenschaften hat ein Fahrzeug und kam zu de rLösung Räder, Farbe, Licht, Antrieb hat ein Fahrzeug auf alle Fälle. Nun habe ich dafür die Methoden in ein Interface geschrieben und zwar so. PHP-Code: Räder kann das Fahrzeug 1 - 4 oder mehr haben und auch unterschiedliche Zoll Größen. Darum in der Methode SetRaeder auch $anzahl und $zoll drin steht. Licht ist auch immer an einem Fahrzeug dran (sollte zumindest) kann aber auch eine unterschiedliche Art sein (Hallogeener, getönt) ein Fahrzeug kann unterschiedlich viele Scheinwerfer haben. Und eine Fahrzeug kann Auf wie Abblendlicht haben. $licht für Art des Lichtes $anzahl für die Anzahl der Scheinwerfer und $licht_art für Auf und / oder Abblendlicht, das ganze in der Methode SetLicht. Und jedes Fahrzeug hat einen Antrieb, denn ohne geht nichts und wenns bei einer Seifenkiste die Beine sind. Deshalb die Methode SetAntrieb und $art für die Antriebsart. Somit bin ich der Meinung habe ich erst mal die wichtigsten Sachen in der Schnittstelle die ich als Grundeigenschaften für ein Fahrzeug brauche. Nun meine Klasse und mein eigentliches Problem, wie in der Klasse die Parameter (denn ich muss die gleiche Anzahl der Parameter mit übergeben und auch vom gleichen Namen) dann richtig in den einzelnen Methoden einsetzen? Müsste ich diese Vorher schon mal initialisieren? Meine Klasse. PHP-Code: Nun kann ich einefach bei instanzieren des Objektes (der Klasse) es so machen. PHP-Code: Meine Frage also wie setze ich in der Klasse in der Methode die Variablen die als Parameter da drin stehen richtig ein? Ich hoffe mal ich habe das verständlich erklärt und auf gute ANtworten. Vielen Dank für eure Zeit und Müh Gruß litter
__________________ Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir. http://www.lit-web.de |
| |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Erfahrener Benutzer | Weil ich einfach über mit den ganzen Sachen umzugehen und wenn es nun mal Sachen gibt die jedes Fahrzeug hat, egal welches, dann kann ich diese doch als vordefinierte Methoden in einem Interface festlegen, dafür sind Interfaces doch. Ich habe dann zum Beispiel auch noch vor (zur Übung) gewisse Sachen als Grund Methoden in abtracte Klassen zu schreiben und diese dann in den Hauptklassen zu nutzen je nach Fahrzeug auszubauen. Also sollte ich im Interface die Parameter Angaben weg lassen, diese kann ich ja dann nach Bedarf in der eigentlichen Methode in der Klasse eintargen und entsprechend verwenden?
__________________ Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir. http://www.lit-web.de |
| |
| | |
| Erfahrener Benutzer | Warum siehst du da den Sinn nicht drin? Ein Interface ist eine ja dafür gedacht als Schnittstelle zu stehen die Methoden vorgibt die in einer Klasse undbedingt dann abgehandelt werden müssen. Und wenn nun mal alle Fahrzeuge grundliegende Eigenschaften haben, dann kann ich die in einem Interface vorbestimmen und dann in den jeweiligen Klassen ob nun abstract oder normale Klassen verweden. Das ist das was ich als Sinn in einem Interface sehe, von daher ist doch egal ob diese methoden in mehreren Klassen immer mal wieder verwendet werden. Oder ich ahbe den Sinn eines Interfaces komplett falsch verstanden.
__________________ Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir. http://www.lit-web.de |
| |
| | ||||
| Erfahrener Benutzer | Zitat:
Zitat:
Zitat:
Gruß litter
__________________ Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir. http://www.lit-web.de | |||
| |
| | |
| Erfahrener Benutzer | Der Unterschied vom Interface zu einer abstracten Klasse ist der, dass man in einem Interface nur und ausschlieslich nur Methoden vordefiniert werden, man kann im Interface keine Methoden mit abhandelnden Programmcode versehen. Die Methoden aus einem Interface müssen absolut gleich in der Klasse wo sie implementiert werden genutzt werden, dass heist von der Sichtbarkeitseingrenzung her wie vom Methodennamen und auch von eventueller Parameterübergabe. In einer abstracten Klasse kannst du Methoden auch abhandlungscode mitgeben. Die Sichtabarkeitsbegrenzung muss in der abhandelnden Klasse wo die abstracte Klasse eingebunden mindestens gleich sein oder eins höher. Das heist verwendest du in eine abstracten Klasse protected dann muss in der Hauptklasse auch mindestens protected darauf verwendet werden oder eins höher also public. Private kannst dagegen hin nicht mehr verwenden. Auch kannst du in einer abstracten Klasse kein private verwenden, weil ud das dann nicht mehr weiter verwenden kannst und auch Sinnfrei wäre. Wieterer Unterschied daraus in einem Interface müssen alle Methoden auf public stehen und somit kannst in einer abhandelnden Klasse auch nur dies Methoden eben als public verwenden. Gleichheit beiden, aus beiden kannst du kein Objecte instanzieren. So habe ich das zumindest verstanden.
__________________ Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir. http://www.lit-web.de |
| |
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Sinn und Zweck abstracter klassen und interfaces | litterauspirna | PHP Tipps 2009 | 8 | 13.06.2009 00:14 |
| Mehrere Klassen verknüpfen | BlackJack01090 | Software-Design | 9 | 26.05.2009 20:43 |
| wie Passwortschutz richtig anwenden? | ricardo | PHP Tipps 2009 | 13 | 19.01.2009 16:39 |
| SOAP Server Parameter richtig zuordnen | Anotherone | PHP Tipps 2008 | 0 | 12.12.2007 11:23 |
| Parameter überschreiben | Igäl | PHP Tipps 2006 | 8 | 04.06.2006 19:55 |
| Parameter der mysql.exe richtig übergeben | bendigo | Datenbanken | 5 | 24.11.2005 13:31 |
| NOT EXISTS und NOT IN richtig anwenden | Datenbanken | 6 | 11.08.2004 09:23 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| interface parameter, php klassen parameter, parameter interface, interface als parameter, interface methode parameter, php interface parameter, php interface eigenschaften, parameter interfaces, php interfaces, klasse mit parameter php, klasse parameter, parameterübergabe wo richtig einsetzen, interface gleiche methode unterschiedliche parameter, was sind die parameter von klassen und methoden, function parameter interface php, interface methoden parameter festelegen, mehrer klassen anwenden php, interface methoden parameter, eigenschaften aus interfaces, interface php eigenschaften |