什么是Java中的“静态{}”?

时间:2013-09-14 05:24:24

标签: java oop static

我不是OOP的专业人士所以请耐心等待。

这段代码来自android的自动生成 Master / Detail Flow 项目:

static {
        // Add 3 sample items.
        addItem(new DummyItem("1", "Item 1"));
        addItem(new DummyItem("2", "Item 2"));
        addItem(new DummyItem("3", "Item 3"));
    }
那是什么?我的意思是它是一个方法?一个构造函数?还是什么?

3 个答案:

答案 0 :(得分:7)

这叫做static initializer。它是在加载类时执行的(或者是初始化的,确切地说,但是你通常没有注意到它的区别)。

更多信息:

答案 1 :(得分:3)

这被称为静态块。

它将在类加载时运行,同时加载所有静态变量,因此在某种程度上您可以将其视为静态内容的构造函数,因为您不必将这些操作的类实例化为跑。或者是加载类时的钩子。

答案 2 :(得分:0)

它被称为静态块。它在类加载时在main方法之前执行。它用于初始化静态数据成员...通过使用静态块我们可以在没有main方法的情况下执行程序....