Java static - 方法或字段与否?

时间:2012-08-24 07:58:31

标签: java static

  

可能重复:
  Static initializer in Java

我想知道这个静态的东西(对不起,这是我第一次遇到这个)对于一个班级或者它的目的是什么。

    public class SomeClass{

           //this is a static field
           private static String someStaticStringField;
           ... //other static fields

           //what is this?
           static{
                 log.debug("Loading config file");
                 try{
                        Class cls = Class.forName("package.ClassName");  
                        properties = new Properties();

                        ...

                 } catch(Exception e){
                        log.error("Error in loading config file");
                 } 


           }

           //this is a static method
           public static String getSomeStaticStringField(){
                  return someStaticStringField;
           }


    }

一般来说,静态{}做什么以及它对类的目的是什么?什么是正确的称呼它?它是类字段,方法还是其他什么?谢谢

1 个答案:

答案 0 :(得分:4)

这称为静态初始化器;它是在第一次引用类时运行的(就像静态变量的任何初始化一样,除了这允许更好的初始化,因为你有一个整个块)。它不是方法也不是字段