Version 3.0 von C#: Das sind die fünf wichtigsten Änderungen

In C# kann man keine Typen erben oder erweitern, die mit der Zugriffsmarkierung „sealed“ versehen sind. In der Version 3.0 kann der Entwickler beliebige Klassen erweitern – selbst Klassen, die als „sealed“ markiert sind. Wenn man etwa der String-Klasse eine Methode NoSpaces() hinzufügen wollte, könnte man eine Erweiterungsmethode wie in Listing A definieren.

Listing A:

Wenn diese Erweiterungsmethode in eine Klasse importiert wird, können Entwickler die Methode NoSpaces() für jeden in der Klasse enthaltenen String aufrufen.

Der erste Parameter der Erweiterungsmethode legt fest, für welche Typen die Erweiterungsmethode zur Verfügung steht. In diesem Fall weist „this string data“ darauf hin, dass die Erweiterungsmethode auf die String-Klasse angewandt werden soll. Falls die Erweiterungsmethode mit „this object data“ deklariert werden würde, stünde die Methode für jedes Objekt zur Verfügung.

Um anzugeben, dass Erweiterungsmethoden importieret werden sollen, muss einfach eine using-Anweisung für deren Namensraum eingefügt werden. Soll zum Beispiel die oben beschriebene Methode verwendet werden, ist die Anweisung using MyExtensionMethods in der Klassendatei erforderlich (Listing B).

Listing B:

Zu beachten ist, dass Erweiterungsmethoden Instanzmethoden nachgeordnet sind. Sollte also eine Instanzmethode mit derselben Signatur wie eine Erweiterungsmethode vorhanden sein, wird die Instanzmethode ausgeführt.

Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

Lags beim Online-Gaming? DSL-Vergleich und andere Tipps schaffen Abhilfe

Beim Online-Gaming kommt es nicht nur auf das eigene Können an. Auch die technischen Voraussetzungen…

2 Tagen ago

GenKI-Fortbildung immer noch Mangelware

Fast jedes zweite Unternehmen bietet keinerlei Schulungen an. In den übrigen Betrieben profitieren oft nur…

2 Tagen ago

Netzwerk-Portfolio für das KI-Zeitalter

Huawei stellt auf der Connect Europe 2024 in Paris mit Xinghe Intelligent Network eine erweiterte…

2 Tagen ago

Internet-Tempo in Deutschland: Viel Luft nach oben

Höchste Zeit für eine schnelle Kupfer-Glas-Migration. Bis 2030 soll in Deutschland Glasfaser flächendeckend ausgerollt sein.

2 Tagen ago

Erste Entwickler-Preview von Android 16 verfügbar

Schon im April 2025 soll Android 16 den Status Plattformstabilität erreichen. Entwicklern gibt Google danach…

2 Tagen ago

Kaspersky warnt vor Cyberangriff auf PyPI-Lieferkette

Die Hintermänner setzen KI-Chatbot-Tools als Köder ein. Opfer fangen sich den Infostealer JarkaStealer ein.

3 Tagen ago