[英](JavaFX) How to call method of class between constructor and initialize()?
我有一個實現接口的類。 從我的基類中,我正在創建實現類的實例,如下所示:
Class newTab;
TransactionTabInterface tabInterface = null;
try {
newTab = Class.forName("[package] + title);
tabInterface = (TransactionTabInterface) newTab.newInstance();
tabInterface.setRootController(this);
} catch (Exception e) {
e.printStackTrace();
}
這是必需的,因為我不知道需要實例化的類的名稱( title
在其他位置確定)。
我遇到的問題是,在新類中,我需要立即訪問rootController
。 我在類中有一個方法,可以讓我傳遞rootController
引用,如上面的代碼所示。
通常,在實例化類時,我會將rootController
傳遞給構造函數,但是我不知道如何在上面的newInstance()
調用中將參數傳遞給構造函數。
編輯 :顯然,上面的代碼在我的主類中,用於實例化新的FXML控制器(newTab)。
在newTab
對象上,可以使用構造函數的類型調用getConstructor(Class<?>...)
,以獲取具有所需args的對該構造函數的引用。
然后,您可以調用此構造函數的newInstance(Object...)
方法來調用帶有參數的構造函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.