java中的清理问题 s.dispose(); 这有什么用???

classComponent1{Component1(){println("Component1()");}voiddispose(){println("Componen... class Component1 {
Component1() { println("Component1()"); }
void dispose() { println("Component1.dispose()"); }
}

class Component2 {
Component2() { println("Component2()"); }
void dispose() { println("Component2.dispose()"); }
}

class Component3 {
Component3() { println("Component3()"); }
void dispose() { println("Component3.dispose()"); }
}

class Root2 {
Component1 c1root;
Component2 c2root;
Component3 c3root;
Root2() {
println("Root()");
c1root = new Component1();
c2root = new Component2();
c3root = new Component3();
}
void dispose() {
c3root.dispose();
c2root.dispose();
c1root.dispose();
println("Root2.dispose()");
}
}

class Stem2 extends Root2 {
Component1 c1stem;
Component2 c2stem;
Component3 c3stem;
Stem2() {
super();
println("Stem2()");
c1stem = new Component1();
c2stem = new Component2();
c3stem = new Component3();
}
void dispose() {
c3stem.dispose();
c2stem.dispose();
c1stem.dispose();
super.dispose();
println("Stem2.dispose()");
}
public static void main(String[] args) {
Stem2 s = new Stem2();
try {
// Code and exception handling...
} finally {
s.dispose();这有什么用???
}
}
}
展开
 我来答
feiyunlong
2008-11-06 · 超过19用户采纳过TA的回答
知道答主
回答量:65
采纳率:0%
帮助的人:44.4万
展开全部
释放由此 Window、其子组件及其拥有的所有子组件所使用的所有本机屏幕资源。即这些 Component 的资源将被破坏,它们使用的所有内存都将返回到操作系统,并将它们标记为不可显示。 通过随后对 pack 或 show 的调用重新构造本机资源,可以再次显示 Window 及其子组件。
做点儿什么
2008-11-06 · TA获得超过341个赞
知道答主
回答量:87
采纳率:0%
帮助的人:92.6万
展开全部
可作刷新之用,如你要输出监视网络流量的曲线,因为曲线是随时间变化的,所以可以使用dispose()刷新屏幕。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式