Das .NET Common Programming Model (CPM)

Inheritance

Bei der OOP wird eine Klasse, die von einer anderen Klasse abgeleitet ist, Kindklasse genannt. Inheritance heißt, dass eine Kindklasse von seiner „Elternklasse“ Eigenschaften „erben“ kann. Bei einem Code bedeutet Inheritance, dass, wenn Sie eine Klasse mit dem Namen Automobil erstellen und ihr Methoden wie MotorStarten und LichtAnschalten sowie Objekte wie Motor und Klimaanlage verleihen, alle von der Automobil-Klasse abgeleiteten Objekte diese anderen Objekte und Methoden „erben“ könnten. Sie könnten Objekte erstellen, die von der Automobil-Klasse abgeleitet sind, wie z. B. MeinAuto, DeinAuto und SeinAuto.

Polymorphism

Polymorphism ist die Fähigkeit, sich über die ererbten Methoden einer Klasse „hinwegzusetzen“. Wenn Sie beispielsweise zwei von Automobil abgeleitete Klassen haben, eine mit Namen ManuellesGetriebe und eine andere mit Namen AutomatikGetriebe, werden Sie die Methode MotorStarten ändern wollen, um sicherzustellen, dass die Schaltung gegebenenfalls auf Parken oder Neutral steht.

Nun zu den eigentlichen Merkmalen der .NET-Umgebung:

Das Modell: System.Object

Das System.Object ist die grundlegende Definition eines jeden Objekts im .NET Framework. Alle anderen Objekte leiten sich von dieser einen grundlegenden Klasse ab. All diese Objekte müssen vier öffentliche Methoden bieten: Equals(), GetHashCode(), GetType() und ToString(). Betrachten wir nun jede Methode etwas näher.

Equals()

Mit der Equals()-Methode werden zwei Objekte verglichen. Sie gibt einen Booleschen Wert (wahr/falsch) zurück. Wenn Sie eine String-Klasse mit dem Text „Hallo“ mit einer StringBuilder-Klasse mit demselben Text vergleichen würden, würde der Wert „Falsch“ erzeugt. Wenn Sie dagegen zwei Klassen vergleichen, die beide demselben Typ angehören und den gleichen Wert aufweisen, ergibt diese Methode den Wert „Wahr“. Sie brauchen die Equals()-Methode in einer .NET-Klasse, um zu erkennen, ob eine bestimmte Instanz eines Objekts identisch wie eine andere ist.

GetHashCode()

Mit der GetHashCode()-Methode wird ein Exemplar eines Objekts eindeutig identifiziert. Diese Eindeutigkeit wird durch .NET gewährleistet, jedoch mit einem Haken: Wenn das von Ihnen verwendete Objekt Teil eines Arrays ähnlicher Objekte sein wird, werden Sie diese Methode außer Kraft setzen und Ihren eigenen Algorithmus verwenden müssen, um die Eindeutigkeit festzulegen. Sie brauchen einen Hash-Code, weil Sie so mehrere Instanzen Ihrer Klasse (z. B. „Kontakt“) in einer Kollektion sammeln können (z. B. „Kontakte“).

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

April-Patches für Windows legen VPN-Verbindungen lahm

Betroffen sind Windows 10 und Windows 11. Laut Microsoft treten unter Umständen VPN-Verbindungsfehler auf. Eine…

1 Tag ago

AMD steigert Umsatz und Gewinn im ersten Quartal

Server-CPUs und Server-GPUs legen deutlich zu. Das Gaming-Segment schwächelt indes.

2 Tagen ago

Google stopft schwerwiegende Sicherheitslöcher in Chrome 124

Zwei Use-after-free-Bugs stecken in Picture In Picture und der WebGPU-Implementierung Dawn. Betroffen sind Chrome für…

3 Tagen ago

Studie: 91 Prozent der Ransomware-Opfer zahlen Lösegeld

Die durchschnittliche Lösegeldzahlung liegt bei 2,5 Millionen Dollar. Acht Prozent der Befragten zählten 2023 mehr…

3 Tagen ago

DMA: EU stuft auch Apples iPadOS als Gatekeeper ein

Eine neue Analyse der EU-Kommission sieht vor allem eine hohe Verbreitung von iPadOS bei Business-Nutzern.…

3 Tagen ago

Chips bescheren Samsung deutlichen Gewinnzuwachs

Das operative Ergebnis wächst um fast 6 Billionen Won auf 6,64 Billionen Won. Die Gewinne…

4 Tagen ago