每当我调用一个函数时,是否会在类中自动调用静态函数?

时间:2015-08-24 15:40:43

标签: java static

所以我有一个公共类,在这个类中有几个公共函数,包括一个静态方法。

public class TestVocabValidator {

    static { getEnumList( vocabList.values() ); }

    public static Iterator<String> getVocabEntries(String x) {
        return null;
    }

}

每当我调用函数getVocabEntries()时,是否会自动调用静态方法?

2 个答案:

答案 0 :(得分:3)

当引用类的名称并加载类时,静态块(例如static {...})将被执行一次。

静态方法(例如getVocabEntries)在每次调用时都会执行。

答案 1 :(得分:1)

每次调用静态方法时都不会。第一次加载该类时,在这种情况下,第一次调用该方法时,将调用静态块。