任何類別物件都有一個父類別 是 Object
因此也繼承了這個 Object 的方法
我們可以加以改寫橫跨多個 class 的方法
首先改寫 Account.java
重新定義方法,就會把 Object 的 toString 方法覆蓋
public String toString(){接下來改寫 SavingAccount.java
return number+"\t"+name+"\t"+balance;
}
重新定義方法
public String toString(){接下來改寫 CreditAccount.java
return super.toString() + "\t"+rate;
}
重新定義方法
public String toString(){最後執行
return super.toString() + "\t"+limit;
}
public class Test2 {就可以看到結果。
public static void main(String[] args) {
CreditAccount ca = new CreditAccount(101,"Simon",200,0.02,30000);
System.out.println( ca.toString() );
}
}
//結果顯示 101 Simon 200.0 0.02 30000.0
垃圾收集
當物件記憶體被剷除的時候,物件會發生一個 finalize() 物件
這也是 Object 物件的一個方法。
首先在 Account.java 中加入
protected void finalize(){測試程式
System.out.println(number+"clean.");
}
public class Test2 {會看到記憶體垃圾回收的訊息
public static void main(String[] args) {
CreditAccount ca = new CreditAccount(101,"Simon",200,0.02,30000);
System.out.println( ca );
ca = null;
System.gc();
}
}
沒有留言:
張貼留言