静态块内的构造函数

时间:2011-03-23 10:37:11

标签: java constructor

是否可以在静态代码块中编写构造函数。

4 个答案:

答案 0 :(得分:1)

不,你不能这样做。构造函数始终是非静态的,并且您只能访问静态块中的静态字段和成员。

对于静态块本身,它通常用于进行一些类初始化,因为此代码被添加到类的每个构造函数中。

答案 1 :(得分:1)

您可以从静态初始化程序中调用构造函数,也可以限制对该构造函数的访问,以便只从那里调用它。

public class Foo {
    static Foo singleton;

    static {
        singleton = new Foo();
    }
    private Foo() { }
}

答案 2 :(得分:0)

如果您的意思是为类编写构造函数,而不是为实例编写,请检查:

http://www.snippetit.com/2009/03/java-static-constructor/

答案 3 :(得分:0)

不可能在静态块内部有构造函数。