java内存使用状况,其实是有人关心的。。楼主这个结论武断了。。 另外,对于绝大多数javaer来说,会new Object()就可以了
再多点,可以学会 Class#newInstance.
再多点,可能还会 clone.
再多点,可能还会 serializable.恭喜你,能够在内存中分配地址创建对象的方法你都学会了。。至于如何释放,本来人家java设计者的原意就是不带你们玩的。
再多点,可以学会 Class#newInstance.
再多点,可能还会 clone.
再多点,可能还会 serializable.恭喜你,能够在内存中分配地址创建对象的方法你都学会了。。至于如何释放,本来人家java设计者的原意就是不带你们玩的。
解决方案 »
- 静态类的问题
- a=b b=c 就a=c?
- 一个简单问题。
- Borland JBuilder2005企业版,英文版的,请问怎么能让它变为中文版?
- 求助,这个问题的更好的算法(空间时间复杂度尽量低).
- jbulider下BEAN的路径问题?
- Java学了一年了,有个问题,还是隐隐作痛——无法脱离书本或文档按着一定的思路自由编写软件
- UltraEdit 怎样 配置工具 appletviewer
- 请问,j2se的中文手册到哪里有下的?
- 我愿提供100分,请高手为我说明一下,为什么在jdk1.4中demo中的stylepad输入中文就会出问题,该如何解决?
- 学了基础不知道该向哪里发展了.
- SOS!!!老大人救小弟呀!关于<@ include file="">的问题
JBuilder可以用Optimize Project方式运行程序,可以看到虚拟机堆中有哪些对象实例,可以看到引用关系,以此可以推断什么地方可能会有问题。
GUI一般都是在单机上用的,现在的机子都不会太差的.何况,Java的垃圾回收还是不错的!
new JDialog().show();
}
这段代码就有可能产生内存泄漏,那些JDialog对象可能不会被回收GUI在单机上使用,但是如果内存一直在上升,这样的程序给用户还是要谨慎一点的
怕的不是JVM回收的效率,而是像这样一直不回收
new JDialog().show();
}
这段代码就有可能产生内存泄漏,那些JDialog对象可能不会被回收GUI在单机上使用,但是如果内存一直在上升,这样的程序给用户还是要谨慎一点的
怕的不是JVM回收的效率,而是像这样一直不回收
---------------------
嗯,关键是要知道垃圾回收如何满足条件,比如这里要dispose掉,基础基础啊,呵呵。
new JDialog().show();
}
这段代码就有可能产生内存泄漏,那些JDialog对象可能不会被回收
-----------------------------------------------------------------
要搞清楚垃圾回收,就要知道JAVA是如何分配内存。
其实JAVA使用内存是比较奢侈地,有空内存,是首先使用的。
并且不是用上GC就随时给你收拾地,哈哈。不过这些东西我们不必过分关心
for(int i=0;i<100;i)){
new JDialog().show();
}
这段代码就有可能产生内存泄漏,那些JDialog对象可能不会被回收这是因为 JDialog 会开启一个新的用户线程,而JDialog又是阻塞的,一直不能结束(只能用户手动结束),所以内存不能回收.
就像 bluesmile979(笑着) 说的,“关键是要知道垃圾回收如何满足条件”
Dialog即使关闭了,实际上也只是相当于setVisiable(false)了,需要dispose掉才可以回收
所以应该改成
for(int i=0;i<100;i)){
JDialog dlg = new JDialog();
dlg.show();
dlg.dispose();
}
或者
for(int i=0;i<100;i)){
JDialog dlg = new JDialog();
dlg.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
dlg.show();
}只是举个例子而已
不要以为用了java就可以不关心内存了,基础知识还是牢固些的