Frage

Hallo, ich bin neu in Aspektj und ich möchte herausfinden, ob ich mit Aspekten Varianten einer Klasse erstellen kann - ich werde auch eine andere Instanz der Klasse erstellen?

War es hilfreich?

Lösung

Ich vermute, dass die Frage lautet: Wenn ich Aspekte hinzufüge, würde eine neue Klasse erstellt werden.

Die Antwort lautet nein, da das Weben entweder beim Kompilieren oder zur Laufzeit und mit Aspektej die Änderungen zu den Klassen hinzufügt, die von den Aspekten betroffen sind. Daher gibt es keine neue Klasse. Es ist nur so, dass der Byte-Code erstellt wird Für die ursprüngliche Klasse und die endgültige Klasse sind unterschiedlich.

Andere Tipps

Was meinst du mit Varianten? Wenn Sie sich fragen, ob Aspekte Kopien Ihrer Klasse instanziiert, lautet die Antwort nein. Aspektj verwendet ein Designmuster genannt proxy Um Anrufe an Ihre Klasse abzufangen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top