| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

14-12-2007, 09:16
|
|
GELight
Registrierter Benutzer
|
|
Registriert seit: Sep 2004
Beiträge: 243
|
|
[PHP5] Vererbung von Klassen
Morgen alle zusammen,
Hab mal ne kleine Frage zum Vererben von Klassen.
Kleines Beispiel mit einem kleinen Problem von mir:
Also die Vererbung ansich funktioniert wunderbar.
Das Problem erklär ich gleich:
Ich habe 2 Klassen. Beide Klassen haben bisher 2 Methoden( ich nehm mal beispielnamen ) für eine interne Fehlerausgabe. Über Methode addError() füge ich immer, wenn irgendwo ein Fehler in der Klasse auftritt, eine Meldung in ein Array ein. Über die zweite Methode ( public ) wird von außen gesagt, ob die Fehlermeldungen direkt ausgegeben werden sollen wenn sie entstehen oder eben nicht.
Wie gesagt haben "beide" Klassen exakt diese beiden methoden für eine interne kleine Fehlerverwaltung. Getrennt funktioniert alles wunderbar. Nun vererbe ich zB. Klasse 1 in Klasse 2 ...
( class klasse2 extends klasse1 )
... führe ich jetzt mein Script aus, dann gibt er mir keinerlei Meldungen mehr aus, die evtl. innerhalb der Klasse 1 passieren.
Was mach ich da evtl. noch falsch oder was verstehe ich noch falsch?
Mario
|

14-12-2007, 09:39
|
Benny-one
Master 
|
|
Registriert seit: Jan 2002
Ort: Fulda
Beiträge: 5.700
|
|
Dein Fehler ist vermutlich, dass deine Klasse, die die Hauptklasse erweitert, das Ergebnis in das eigene Attribut schreibt, statt in das der Hauptklasse zu schreiben. Am besten machst du dir eine Methode, die beide Ergebnisse zusammenfügt.
|

14-12-2007, 12:47
|
|
GELight
Registrierter Benutzer
|
|
Registriert seit: Sep 2004
Beiträge: 243
|
|
[PHP5] Vererbung
Hi,
Also wenn ich dich richtig verstehe, dann brauche ich dann wohl diese Methode bzw. auch die ArrayVariable in der neuen Klasse garnicht mit anzulegen, da diese ja schon in der alten Klasse vorhanden ist oder?
Ich dachte, dass die eh überladen oder überschrieben werden und somit die Methode aus der neuen Klasse die aktuelle wird.
Mario
|

14-12-2007, 12:51
|
Benny-one
Master 
|
|
Registriert seit: Jan 2002
Ort: Fulda
Beiträge: 5.700
|
|
Überschreiben? Ne, du kannst doch immer noch unterscheiden mit self:: und parent:: auf welche zu zugreifen willst.
|

14-12-2007, 13:31
|
|
GELight
Registrierter Benutzer
|
|
Registriert seit: Sep 2004
Beiträge: 243
|
|
[PHP5] Vererbung
In meiner alten Klasse rufe ich ja nur mit $this->..... meine Methoden auf. In der neuen mach bisher das selbe. MUSS ich da jetzt in der neuen Klasse mit parent:: arbeiten oder versteh ich noch was falsch?
Theoretisch kann ich in meinem Fall doch in der neuen Klasse eh die Errormethoden weglassen, wenn diese durch die alte Klasse ja schon zur verfügung gestellt werden oder?
Mario
|

14-12-2007, 13:56
|
Benny-one
Master 
|
|
Registriert seit: Jan 2002
Ort: Fulda
Beiträge: 5.700
|
|
Re: [PHP5] Vererbung
Zitat:
Original geschrieben von GELight
...Theoretisch kann ich in meinem Fall doch in der neuen Klasse eh die Errormethoden weglassen, wenn diese durch die alte Klasse ja schon zur verfügung gestellt werden oder?
Mario
|
sollte gehen
|

14-12-2007, 16:16
|
|
PHP-Desaster
PHP Expert
|
|
Registriert seit: Mar 2006
Beiträge: 3.104
|
|
Re: [PHP5] Vererbung
Zitat:
|
Theoretisch kann ich in meinem Fall doch in der neuen Klasse eh die Errormethoden weglassen, wenn diese durch die alte Klasse ja schon zur verfügung gestellt werden oder?
|
Genau das ist der Sinn der Vererbung
|

14-12-2007, 17:03
|
|
GELight
Registrierter Benutzer
|
|
Registriert seit: Sep 2004
Beiträge: 243
|
|
[PHP5] Vererbung
Hi PHP-Desaster...
Habs bisher noch nie angewendet und nur theoretisch gekannt.
Daher ist das vielleicht ne etwas blöde Frage gewesen. Ich werd da noch etwas Übung brauchen um das noch lockerer und für mich angenehmer anwenden zu können.
Aber auch dir nochmal danke für den Hinweis.
Mario
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|