3

我不是 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"));
    }

那是什么?我的意思是它是一个方法?一个构造函数?还是什么?

4

3 回答 3

7

这称为静态初始化程序。它在加载类时执行(或初始化,准确地说,但您通常不会注意到差异)。

更多信息:

于 2013-09-14T05:27:25.237 回答
3

这称为静态块。

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

于 2013-09-14T05:27:06.013 回答
0

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

于 2016-03-04T05:23:47.167 回答