私有静态方法的静态变量可以与私有静态方法或用静块进行初始化。两者之间有什么细微差别?有什么情况我不能使用静态方法来初始化静态成员?我发现后者更具可读性。静块VS静态成员初始化
静块初始化:
private static int NUM_ITER;
static {
// Operations
NUM_ITER = //val from above operations.
}
私人静态方法初始化:
private static int NUM_ITER = calculateNumIter();
// Some method comment on how we are calculating.
private static int calculateNumIter()
{
// Operations.
return //value_from_operations.
}
我喜欢第二之一,因为它是更具有可读性。有什么情况我只能使用第一个(静态块)?
什么是初始化静态成员(决赛以及变量)的最佳编码约定/设计?即使从这个thread我学到私人静态方法有优势的静态块。
感谢,
自从我使用版本2以来,我已经为静态块遗忘了几次静态;)。 – Stefan 2012-07-23 20:34:21