| | | | |
| |||||||
| Software-Design Diskussionen auf Profi-Niveau: PHP Lösungen auf konzeptioneller Ebene |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | ||
| Erfahrener Benutzer | Zitat:
Geschützte (protected) Funktionen werden mit vererbt, sind aber auch dort nur innerhalb der Klasse verfügbar. Private Methoden werden nicht vererbt und sind ebenfalls nur innerhalb der Klasse verfügbar. Vom Design her wäre es schlauer, eine abstrakte Klasse zu definieren die die Schnittmengen zwischen beiden anderen Klassen darstellt, und diese dann zu erweitern. EDIT: nikosch war schneller.. LG: jw-lighting ![]()
__________________ Geändert von jw-lighting (15.07.2010 um 14:53 Uhr). | |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 10.02.2009
Beiträge: 929
![]() ![]() ![]() ![]() | Ups sorry. Aber wieso verletze ich die Schnittstelle? Vlt ist es ja nicht beabsichtigt, dass die 2 von aussen aufgerufen werden sollen. Persönlich finde ich das nachträgliche überschreiben viel grausamer. Wenn sie nicht verfügbar sein soll, dann soll die Elternklasse dafür sorgen. Wozu soll eine Methode in einer Kindsklasse verfügbar sein, wenn diese nicht aufrufbar sein darf. Das einzige Szenario wo ich mir sowas vorstellen könnte, wäre eine API wo etwas gravierendes geändert wurde und man nun bitte Methode / Klasse xyz verwenden soll. Das ist halt meine Sichtiweise. |
| | |
| | |
| Moderator¹ Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Wenn du ein Haustier haben willst, das zwei Beine und zwei Flügel hat - dann solltest du es nicht von zwei Säugetieren zeugen lassen. Wenn deine Kindklasse etwas bestimmtes nicht können/dürfen soll - wieso soll sie dann bitte überhaupt von einer Elternklasse erben, die diese Fähigkeiten hat? „Säugetier“ und „Vogel“ leiten sich beide von „Lebewesen“ ab. Du willst aber offenbar „Vogel“ von „Säugetier“ ableiten.
__________________ RGB is totally confusing - I mean, at least #C0FFEE should be brown, right? |
| | |
| | |||
| Erfahrener Benutzer | Zitat:
Zitat:
PHP-Code: ![]()
__________________ | ||
| | |
| | |
| Neuer Benutzer Registriert seit: 12.05.2010
Beiträge: 22
PHP-Kenntnisse: Anfänger ![]() | ich dachte an sowas wie sealed in c#, aber das verhindert auch nur weiteres überschreiben. über Klasse A sitzt noch eine abstrakte Klasse und ein Interface mit jeder Menge Logik. Es sind bereits alle Methoden F1, F2, F3 im Interface defniert. Dann müsste man die Struktur doppelt anlegen und die ganze Logik davon auslagern (automatisches Suchen von Klassenpfaden, viel statisches). Ich werde dann wohl doch auf die unschönere Methoder gehen und leer überschreiben. |
| | |
| | ||||
| moderatives Dielektrikum Registriert seit: 21.05.2008
Beiträge: 35.994
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Zitat:
Zitat:
Zitat:
__________________ -- One pixel is still too big. Please make it smaller. ASAP. Initiative Mittelstand. Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers. -- | |||
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [Erledigt] Klasse aus einer anderen Klasse aufrufen | Tobby | PHP-Fortgeschrittene | 7 | 14.07.2010 20:05 |
| [Erledigt] klasse für ein paar funktionen? | Codercrush | Software-Design | 2 | 17.05.2010 16:49 |
| Statische Methode bei Vererbter Klasse | Puccini | PHP-Fortgeschrittene | 7 | 14.03.2010 20:39 |
| [Erledigt] Nur einer bestimmten Klasse Zugriff andere Klasse erlauben | Turamisi | Software-Design | 2 | 20.02.2010 20:31 |
| [Erledigt] Funktionen in der selben Klasse aufrufen | Lollix | PHP Tipps 2010 | 4 | 17.02.2010 19:32 |
| Klasse für Objekteigenschaft erzeugen? | Asipak | PHP-Fortgeschrittene | 25 | 30.05.2009 19:45 |
| [Erledigt] Gültigkeitsbereiche / Klasse / Variablen / Funktionen | Veqeta | PHP Tipps 2009 | 7 | 14.05.2009 11:32 |
| Methode einer anderen Klasse aufrufen | Luka | PHP-Fortgeschrittene | 15 | 09.11.2008 14:19 |
| [Erledigt] Klasse / Funktionen verwenden | PHP4ever | PHP Tipps 2008 | 7 | 27.07.2008 16:24 |
| welche funktionen deaktivieren | brian johnson | PHP-Fortgeschrittene | 4 | 15.11.2007 09:25 |
| String-Parser Klasse - was muss rein? | Matze | PHP Tipps 2007 | 2 | 08.04.2007 22:14 |
| seiten / Funktionen - aktiveren/ Deaktivieren | annaloga | PHP Tipps 2006 | 4 | 18.04.2006 09:33 |
| [Erledigt] Funktionen in einer Klasse 'registrieren' bzw. includieren ? | PHP-Fortgeschrittene | 1 | 16.07.2005 13:23 | |
| Javascript funktionen deaktivieren! | Kori | HTML, Usability und Barrierefreiheit | 16 | 10.07.2005 22:28 |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| vererbung von funktionen aufheben html, briefmarkenautomat c#, funktion deaktivieren html, c# geerbte funktion sperren, php class aktivieren, php klasse deaktivieren, php class beenden, php zugriff klassen sperren, php5 funktionen nicht vererben, funktion in php deaktivieren, class deaktivieren, php klasse funktionen sperren, php funktion entfernen ableitung, vererbte funktionen sperren, c# geerbte methoden sperren, funktions sicherheit ausschalten, c# bestimmte funktionen einer klasse abschalten, briefmarkenautomat, c#, php nicht vererbte funktionen, php funktion als überschreibbar deklarieren |