Lorsque Spock @Partagé annotation doit être préféré à un champ statique?

Il n'y a pas grand chose à ajouter, toute la question est dans le titre.

Tenir compte de ces deux instances de la classe Foo utilisé dans un Spock spécification.

@Shared Foo foo1 = new Foo()

static Foo foo2 = new Foo()

Dans l'ensemble, je sais que l'idée derrière @Shared annotation, mais je suppose que c'est mieux d'utiliser les fonctionnalités de langage, qui dans ce cas serait static champ.

Sont-t-il des cas dans lesquels on doit la préférence sur les autres ou c'est plutôt une question de goût?

  • Autant que je sache, ils sont en fait le même point de vue fonctionnel, mais @Shared meilleure montre votre intention
InformationsquelleAutor topr | 2016-03-10