我有一個類GuiApplication
和一個類ImageHandler
。 GUI可以與ImageHandler
(以及圖像)一起工作,通過一個名爲Crawler
的類來提供GUI可以使用的方法的外觀。如何在不創建實例的情況下訪問某個類中的特定組件/方法
有一個單獨的類StartUp
它有一個主要方法,唯一做的就是創建一個GuiApplication
(基本上它啓動程序)的實例。
在我的GUI中,有一個作爲記錄器的JTextPane
:某些動作和事件將顯示在那裏。通過我的GUI中其他位置的輸出,我可以輕鬆更新其值。但是,當我的域類中有輸出時,例如ImageHandler
,我什麼都做不了。
有一個Try-Catch
塊可以防止我的程序崩潰,當一個意外的圖像URL通過我的閱讀器,當它發生時,我想在文本窗格中顯示(「Error:File xxx could not be read」) 。
但是,我沒有看到一個優雅的方式與我的GUI進行通信:我不能創建一個實例,因爲這將創建一個新的GUI,我不認爲接近我的GUI通過StartUp
文件是好的也可以練習。
我正在考慮定義一個可以在整個項目中訪問的不同類中的變量,但我首先需要一些意見。
聽起來像不良的外觀設計。根據Joop的回答,我會添加一個_checked_異常,並且我會考慮將GUI直接與ImageHandler進行接口 - 在包裝庫時,Facade很有用,您是否真的只需要一個類的包裝?你不應該定義一個全局變量,這是不好的做法。 – ignis
目前還有一個類與方法有關連接到特定的網頁,我打算添加類似的東西,如VideoHandler,所以我相信一個façade是適當的眼睛附加功能。我會刷新我的例外,他們似乎是解決這個問題的方法。 –