10

如果我在无状态 bean 中有一个静态字段:

@Stateless
@Local(SomeClass.class)
public class AccountBean implements SomeClass{

   private static final int STATIC_FIELD = 0;

   public AccountBean () {}
}

STATIC_FIELD值是否会在所有AccountBean实例中共享,例如在基本类中?

编辑将字段标记为final如下建议。

4

1 回答 1

13

是的,它将被共享,但当然只能在单个 JVM 内。它的大写表明它是一个常数,因此应该是final

如果它不是一个常量,那么它就会有异味,不尊重 Java 命名约定,并且违反 EJB 规范。

于 2012-12-22T20:27:25.757 回答