Es gibt nicht viel hinzuzufügen, die ganze Frage ist im Titel.Wenn Spocks @ Shared-Annotation einem statischen Feld vorgezogen werden sollte?
Betrachten Sie diese beiden Instanzen der Klasse Foo in einer Spock-Spezifikation verwendet.
@Shared Foo foo1 = new Foo()
static Foo foo2 = new Foo()
Insgesamt weiß, dass ich die Idee hinter @Shared
Anmerkung aber ich denke, es ist besser, Sprachfunktionen zu verwenden, die in diesem Fall static
Feld sein würde.
Gibt es spezielle Fälle, in denen man dem anderen den Vorzug geben sollte oder eher eine Frage des Geschmacks?
Afaik sind sie effektiv die gleiche funktional, aber '@ Shared' besser zeigt Ihre Absicht –