一个sigleton类,有些初始化参数,如果作为静态常量放在类中只在内存创建一份吧,如果直接在该类某个方法中声明,是否该方法每次执行都会创建这些常量?例如:import org.springframework.stereotype.Component;
@Component("test")
class Test{
  int a=5;
  //static int a=5;
  function void t(){
    //int a=5;
    System.out.println(a);
  }
}Test类用Spring管理,当然它就是sigleton的了,那么,a=5这个声明放在类中、或声明为静态,还是放在方法中占用资源最少呢?放在方法中会不会每次调用都会创建新的变量a ?

解决方案 »

  1.   

    当然,放在方法中时每调用一次方法就会产生一个新的变量,
    是单例还是声明为public static final的吧。
      

  2.   

     在项目开发中,常量是专门定义到一个类中
       都是类似于以下定义 public static final String/Long ....
      

  3.   

    如果变量对于每次方法调用值都一样的话那就是static final,变量的定义怎么会和单例有必然的联系呢,单例的话如果对于每个方法 参数都要根据传入的变量 变化的话 那肯定是每次定义啊。看变量用途 和单例没关系