我正在尋找一種將某些跟蹤診斷添加到某些遺留Java代碼的方法。從這個意義上講,我的意思是我不能改變任何方法。如果我們考慮以下對象:在不通過方法的情況下在Java類之間共享對象
public class ClassIOwnAndCanChange {
public static void main(String[] args) {
// store my object here that I want to make
// available in LegacyClassA and B
myMethod("foo", 100);
}
}
public class LegacyClassA {
// method I cannot change
public void myMethod(String name, int timer) {
//want to get my 'injected' object here so that I can,
//for instance, time this method
methodCallThatTakesSomeTime("some param");
}
}
public class LegacyClassB {
// method I cannot change
public void methodCallThatTakesSomeTime(String name) {
// want to get my 'injected' object here for
// diagnostic reasons
}
}
我自己的,我想提出在B上可用的對象和C.什麼是做到這一點在Java中不改變該甲對乙調用該方法的正確方法和B調用C的方法?
你將不得不改進你的問題才能得到答案。也許提供一些例子,例如使用'methodOfA','methodOfB'等一些名字。從標題看來我似乎有一個靜態成員可以完成這項工作,但是我可能誤解了你的全局引用 –
... – lrl