WikiDer > Container (Informatik)
EIN Container in dem Informatik ist ein Datenstruktur die einen konzeptionellen Behälter oder Container implementiert, der ein oder mehrere andere Objekte enthält.
Ein bestimmter Container kann in erster Linie dazu bestimmt sein, Objekte aufzunehmen (so dass es sich um eine Art Sammlung wird), aber ein Container kann auch in erster Linie dazu gedacht sein, den darin enthaltenen Objekten Funktionalität hinzuzufügen.
Eigenschaften eines Behälters
Das allgemeine Merkmal eines Containertyps ist, dass Container konzeptionell Objekte "enthalten": Container enthalten Methoden um ein bestimmtes Objekt in den Container zu legen, es im Container zu finden und eventuell auch ein Objekt aus dem Container zu entfernen. Ein Containertyp basiert auf der Technik von Anhäufung.
Die Art des Objekts, das ein Container enthalten kann, wird durch seine Programmiersprache und die Containertypfunktion. Statisch typisierte Sprachen ohne parametrisiert Polymorphismus Beschränken Sie Container oft auf einen bestimmten Typ (obwohl in Sprachen wie Java bis Version 5.0, die "limit" fast jeden Typ in der Sprache enthält). Behälter wie die EJBBehälter der J2EEPlattform beschränken den Inhalt der Container auf die Objekte, die EJBs sind.
Container als Sammlungen
Die häufigste Verwendung eines Containers ist eine Art von Sammlung von Objekten. Es gibt viele Formen solcher Container, jede nach ihrem eigenen Modell, Mathematiker Struktur - Kollektionen, Karten, Taschen, Listen, lifos, fifos, .... Der Nutzen liegt darin, dass jedes Modell für eine bestimmte Nutzungsart optimiert ist.
Das Modell hinter einem solchen Container bestimmt unter anderem, wie mit den im Container enthaltenen Objekten umgegangen wird – unter anderem lassen sich dadurch gegenseitige Reihenfolge und Position bestimmen. Normalerweise ist es notwendig, dass diese Reihenfolge eingehalten wird, um den Betrieb des Containers zu gewährleisten. Solche Container verwenden ihre Zugriffsmethoden, um eine ordnungsgemäße Verwendung zu gewährleisten, aber verschiedene Programmiersprachen führen auch das Konzept von a . ein Iteratortyp. Ein Iterator ist dann ein Hilfsobjekt zu einem Container, das die Sammlung in der richtigen Reihenfolge durchläuft und dabei eine bestimmte Aufgabe ausführt.
Ein Container kann seine Elemente besitzen. In diesem Fall darf die Lebensdauer der Elemente die des Behälters nicht überschreiten.
Container als Dekorateure
Eine andere Verwendung eines Containers ist die Anwendung, bei der ein Container Funktionalität zu den im Container enthaltenen Elementen "hinzufügt". Diese Funktionalität ist in den Containerzugriffsmethoden enthalten; ein solcher Container ist ein Beispiel für a Dekorateur-Muster.
Zwei typische Beispiele für einen solchen Behälter sind die Servlet- und EJB-Container, die durch die J2EE-Spezifikationen definiert sind. Ein solcher Container enthält ein Objekt, das Geschäftsfunktionen enthält und technische und Infrastrukturfunktionen hinzufügt (z Datenbanken, Vernetzung, Dateien und derartige).