例如,假設我有以下基類我不能修改源代碼在Scala中,除繼承外,還有一種技術可以知道什麼時候調用了基類方法?
class Base {
def someMethod = ...
}
如果我定義了一個子類
class Sub extends Base {
override def someMethod = ...
}
當我做
VAL子=新Sub
然後我自動「知道」什麼時候調用someMethod,因爲sub.someMethod被觸發。不過,我想避免的子類,所以我在想,如果有一些技術,藉此我可以做
class NotSubclass {
val Base = new Base
}
或類似
而且有點「重視」,從基地的someMethod使NotSubclass會「知道」時的someMethod被稱爲。澄清一些方法被稱爲外部我從來沒有在我自己的代碼中打電話。
@deltanovember:所以你不能改變源代碼,但不知怎的後處理編譯的類文件是好的? –