public static void main(String []args)
{
randomDemo rd=new randomDemo(); //a
for (int i=0;i<25 ; i++)      
{
 rd.rd(); }
}像这个a语句 放在for里面和外面运行结果一样  我不知道区别在哪 
            Random r=new Random();
 void rd()
{
int a= r.nextInt();
System.out.println("a="+a);

还有这个Random对象 放在方法外面/方法里面.都不影响这个方法的调用 
到底应该怎么写  如果是for一次 创建一次对象 
那么垃圾回收也会把上一个对象收了吧
因为 那个引用又有新的对象用了  上个对象没了引用 就变垃圾了
求高手指点啊

解决方案 »

  1.   

    放里面是每次都重新创建对象并调用,显然浪费资源空间,
    一般都是放在外面,不过一下情况特殊。for () {
    Bean bean = new Bean();
    bean.setXXX(XXX);
    ...
    list.add(bean);
    }这种需要放在里面,经常有人问类似的问题。
      

  2.   

    1、放在函数外面,是作为类的一个field存在的。而且是在调用该类的构造器之前就做了一次初始化。