日期:2014-05-20  浏览次数:20757 次

NEW开辟内存的问题,能自动销毁吗,机制是什么
 JAVA中NEW一个新的对象就会开辟一段新的内存,执行某个操作。这样会占用一段内存。
如果执行完操作之后,是否需要自己专门写一段代码销毁内存,还是JAVA本身就有内存销毁机制?
效率如何呢,有没有什么特别的触发条件?

另外,我还在想数据库连接池的技术,当数据库连接池中,用户连接不在需要的时候,应该是将连接返回到池中,如何实现呢?这个不是销毁内存,这两者有没有什么相似的地方呢?

------解决方案--------------------
自动的,也可以用System.gc()手动销毁
连接对象.close(),这个不是销毁,是把连接对象归还给连接池
------解决方案--------------------


一看就是一个学习过c++的人  学习java会有的疑问
这个java不用去手动回收内存的啦,

------解决方案--------------------
引用:
Java中的内存泄露

Java程序中同样会发生内存泄露的问题,但是Java中引入了垃圾回收机制。这里所说的垃圾就是那些泄露的内存。

在Java语言中,没有引用句柄指向的类对象最容易成为垃圾。产生垃圾的情况有很多,主要有以下3种:

(1)       超出对象的引用句柄的作用域时,这个引用句柄引用的对象就变成垃圾。

例:



       Person p1 =……


在程序中应尽量少用匿名对象  为什么要少用 不是能回收吗
------解决方案--------------------
数据库的连接池没有过多涉及,但是java申请了内存之后不用你手动回收的;JVM会帮你回收的!