設置類變量作爲方法的輸出(姑且稱之爲「A」)與一個抽象方法(我們稱之爲「AA()」 )返回另一個類的實例('B')。 我試圖對其中B的情況下,「屬於」(通過創建),這A.我在想這樣做的方法的實例是使用B的由AA()返回的實例作爲類變量信息對於答案。問題是,在圖書館裏,A已經執行了五十次以上,被稱爲比這更多次。在我上有一個抽象類的現有庫擴展一個抽象類
在庫中的一些進一步的背景中,類A和B是其中A的一個實例包含顯影層次結構的兒童(A的其他實例)大的遞歸模式的一部分。 A的層級首次開發則A.A()被用於開發B的層次結構(通過創建B的情況下,也有孩子),但是既不是「知道」有關的任何其他這是什麼,我試圖改變。
目前,我在A('A.c()')中設計了一個新方法,可以在子類中的每個()的實現的return語句處調用該方法。 A.c()簡單地接受返回的B的實例,爲該實例設置一個變量,然後將該實例返回給A.a()的返回語句。
的類和A和B涉及在實際文庫的方法有:原子(A),盒(B)和createBox(A.A())。 A.b和A.c()我已經包含了,因爲它們用於我當前的解決方案(請參閱上一段)。
public abstract class Atom {
private Box b = null;
public abstract Box createBox()
protected Box setB(Box box){
this.b = box;
return box;
}
}
public class Alpha extends Atom {
...
public Box createBox(){
...
Box box = new Box();
...
return setB(box);
}
}
我覺得這不是一個整潔,也不可管理的解決方案。理想情況下,我希望能夠編寫代碼,以便無論A.a()返回什麼,A中的變量都設置爲此。有沒有人知道實現這一目標的方式,或者可能提出一個更廣泛的戰略,我應該着眼於在不同的層面上解決這個問題?
任何幫助,特別是指導重新措辭的問題或瞭解更多信息的請求,將不勝感激!我一直在爭取這一天幾天,現在肯定我錯過了一些東西。
在此先感謝!
EDIT 1個
該文庫是通過SCILAB jlatexmath。 (http://forge.scilab.org/index.php/p/jlatexmath/downloads/)
編輯2
底氣變化到庫的目的和更新類和方法名,以反映該庫。
您可能想提及庫和/或提供其他上下文或示例代碼。事實上,這幾乎是不可理解的抽象,類和實例之間的關係很難遵循。 – pvg
@pvg我已經添加了庫名,也會在一會兒抓一個URL。我正在努力思考我可以添加哪些代碼示例,因爲我在那裏的代碼示例實際上是在庫中發生的。你有什麼建議嗎? – lachy
你寫的具體的類和方法是什麼?你試圖完成什麼樣的總體目標? – pvg