O'Reilly logo

Kompaktkurs C# 5.0, 4th Edition by Hanspeter Mössenböck

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

14 Generische Bausteine

Manchmal möchte man eine Klasse oder eine Methode so allgemein halten, dass sie mit Objekten verschiedener Typen arbeiten kann. Das kann man zum Beispiel erreichen, indem man als Typ dieser Objekte die oberste Basisklasse object wählt, zu der alle anderen Typen kompatibel sind. Folgende Klasse zeigt als Beispiel einen Puffer, in dem man beliebige Daten speichern kann:

class Buffer {   private object[] data = ...;   public void Put(object x) {...}   public object Get() {...}}

In diesem Puffer können nun Zahlen, Strings oder beliebige andere Objekte abgelegt werden, z.B.:

Buffer buf = new Buffer();buf.Put(3);buf.Put("a string");buf.Put(new Person());

Diese Implementierung führt allerdings zu folgenden Problemen:

1. Übergibt ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required