前言
通过组合和继承方法来创建新类时,永远不必担心对象的清理问题,子对象通常都会留给垃圾回收器进行处理。如果确实遇到清理的问题,那么必须用心为新类创建
dispose()方法(在这里我选用此名称,读者可以提出更好的)。并且由于继承的缘故,如果我们有其他作为垃圾回收一部分的特殊清理动作,就必须在导出类中覆盖
dispose()方法。当覆盖被继承类的
dispose()方法时,务必记住调用基类版本
dispose()方法;否则,基类的清理动作就不会发生。下例就证明了这一点:
示例源码
package com.mufeng.theeighthchapter;
class Characteristic {// 特征
private String s;
public Characteristic(String s) {
// TODO Auto-generated constructor stub
this.s = s;
System.out.println("Creating Characteristic " + s);
}
protected void dispose() {
System.out.println("disposing Characteristic " + s);
}
}
class Description {// 描述
private String s;
public Description(String s) {
// TODO Au