Beispiele zu "Aspekte"

Beispiele zu "Aspekte"

Änlich wie in C++ der Übergang von "struct" zu "clsss" den Schritt zur Objektorientierung einletitet, läutet der Übergang von "class" zu "aspect" die Aspektorientierung ein.

Wohin mit den Aspekten? / Vererbungslehre (Extensions)

In 1Person finden Sie das Beispiel zur Ablage der Apekte und abstrakten Aspekte.

In 2Person befindet sich der LoggingAspekt, der das Logging-Interface implementiert.

Instanziierung und Assoziationen

Instanziierung pro Objekt

3PersonRunnable enthält das Beispiel, wo mehrere Personen-Threads gestartet werden und jedem Objekt eine eigene Aspekt-Instanz zugeteilt wird, um die korrekte Arbeitszeit zu ermitteln.

Instanziierung pro Kontrollfluss

Eine andere Möglichkeit, mehrere Aspekt-Instanzen zu kreieren, wird in 4PersonPercflow demonstriert. Dort wird für den PauseAspekt "cflowbelow()" verwendet.

Instanziierung pro Typ

Neu in AspectJ 5 ist die Instanziierung über "pertypewithin", wie in LogAspect aus 5aFirma ersichtlich ist. Hier wird pro Klasse eine eigenes Logger-Objekt zur Verfügung gestellt. Wenn Sie die Firma- oder Person-Klasse starten, werden Sie feststellen, dass sich die Log-Ausgaben im ausgegebenen Klassennamen unterscheiden.

Zugriff auf fremde Instanzen / Privilegien

In 5PersonAspectOf wird im PauseAspekt auf Attribute des ArbeitszeitAspekts zugegriffen.

Dar PauseAspekt in 6PersonPrivileged zeigt, wie der Zugriff auf fremde Aspekte aussieht, wenn mehrere Instanzen im Spiel sind.


letzte Änderung: 24. Juli 2005