Manchmal möchten Sie sich auf ein Objekt in einem allgemeineren Sinne beziehen. Die meisten Leute verstehen Benutzerschnittstellen, so ist hier ein grundlegendes Beispiel:
Angenommen, Sie haben einen Bildschirm, wo jedes Steuerelement deaktiviert werden soll, bis eine Art von Cue, dh. Ein Benutzer füllt eine erste Eingabe aus. Ihre Steuerelemente können Dinge wie Textfelder, Comboboxen (Dropdown) oder Schaltflächen sein. Ein Weg, auf den Sie sich auf einen Schlag beziehen können, ist, sie als Kontrollen zu behandeln.
Sie können Code schreiben wie:
foreach(Control c in MyForm.Controls)c.Enabled = false;
Dieses Beispiel ist aber, wie Sie die Programmierung mehr starten werden Sie sehen, das ein ziemlich grundlegender Teil der objektorientierten Existenz.
Eine Stelle, an der Sie die meisten objektorientierten Basisklassenbibliotheken finden können, ist diese Technik mit I/O - alle verfügbaren Eingabe- und Ausgabebibliotheken. Im abstraktesten Sinne haben Sie einen Stream, aber wenn Sie sich die Klassenhierarchie ansehen, werden Sie polymorphe Variationen des Stream-Konzepts sehen: einen Datei-Stream, einen Netzwerk-Stream und so weiter. Das Lesen und Schreiben von Stream-Implementierungen erfolgt mit "Readers" bzw. "Writers". Wenn Sie einige grundlegende Programmieraufgaben ausführen, erhalten Sie ein sehr gutes Gefühl dafür, wie nützlich dieser Polymorphismus ist. Beispiel: Schreiben von Code, der aus einem Stream liest und ihn abstrahiert, sodass er auf jede Implementierung von Stream angewendet werden kann, der übergeben wird. Eine Sache, die ich immer den Leuten vorschlagen möchte, ist, die eingebauten Bibliotheken zu studieren, um zu sehen, wie Framework-Designer und Programmierer Techniken wie diese für eine sehr praktische alltägliche Verwendung einsetzen.
Also verallgemeinert es es einfach, so dass ich, wenn ich mit allen Objekten (einschließlich aller Unterklassen) sprechen muss, sie alle als Basisklasse behandeln und alle behandeln kann. Ich denke, das ist, was ich von deinem Beispiel bekomme. – RoR
Das stimmt. Bezug auf alle "Mitarbeiter", obwohl sie "Auftragnehmer" oder "Temp" oder "Vollzeit" und so weiter sind. Es passiert viel. – t3rse