类中定义了一个全局对象,在多处new,但没有赋值null,是不是会导致内存一直增加?

解决方案 »

  1.   

    在new前赋值null是不是就安全了?
      

  2.   

    上代码吧楼主,要看具体情况才知道是否有泄露的情况。
    通常来说,一个变量如果不被线程的调用栈以及 static 引用的话,垃圾回收期间会被释放的。
      

  3.   

    不会,全局对象只会保存最后一个new的对象的引用,堆中的对象是最后一个new的对象,前面new的对象会被垃圾收集器回收的。
      

  4.   

    全局变量只会指向在堆中最后一次new的对象。前面new的被回收。在堆中的对象只要没有指向它的引用,就可以被回收。
      

  5.   

    改成局部变量new了再赋值给全局的。