請想問一下一個粗淺的問題
可是我不知道要下什麼關鍵字來找答案所以找不到@@
假如我有一個類別jar檔 AAA
他的架構是
建構子中會new一些全域物件
然後當中的抽象類別BBB可供我呼叫
因此我在使用上大概是
AAA aaa = new AAA();
aaa.BBB(new todo(){
實作(){
熱水 water = 燒水();
water.放涼;
喝水(water);
}
})
實作中的喝水會使用AAA的模組來對全域物件進行存取,大概是這樣
我碰到的問題如下
因為這個實作裡面都是固定 燒水放涼+喝水,想抽出來
一開始試著全部丟到新method,但是喝水那行抽不了
因此改成讓新class繼承AAA,新抽象類別再繼承BBB
直接在新抽象類別做 燒水放涼+喝水 ,以後我都改用新的class就好
不過執行下去在喝水的地方NullPointerException
因為他要讀AAA的全域物件時找不到......
卡到最後我只好做半套弄一個會回傳water的燒水放涼模組
再把water放到喝水中orz
想請問這種架構真的沒辦法抽出來嗎,感謝@@