分類:軟件設計

軟件設計

在Java中使用工廠模式

我正在研究工廠模式,我對這是最好的方法是有所懷疑的。 我開發了兩個完全相同的程序,唯一的區別是實現有問題的模式的代碼。經過比較可以幫助我找到: 代碼哪一個更好的可重用性,JVM,性能等,1或2 ? 是否可以做更多的最佳方式? 共享課程 藝術家 public class ArtistFrame extends AbstractFactoryJInternalFram

IT屋 2017/5/16 20:56:48 喜歡

軟件設計

國家設計模式

我正在嘗試實現狀態模式,但問題是,我不會更改狀態,當我使用測試類時,它正在使用與接口有關系的具體類。 例如在狀態類中的fire和move方法不起作用,并返回Railgun的結果。 這里是代碼: public interface RailgunState { public String fire(Point p,int發); public String move(P

IT屋 2017/5/16 20:55:40 喜歡

軟件設計

通過在編譯時進行驗證來改進構建器模式

我最近在我的一個項目中開始使用Builder模式,我試圖在我的Builder類上添加一些驗證。我假設我們不能在編譯時這樣做,這就是為什么我在運行時做這個驗證。但是可能是我錯了,這就是我在編譯期間是否可以做到這一點。 傳統構建器模式 public final class RequestKey { private final Long userid; private final

IT屋 2017/5/16 20:54:09 喜歡

軟件設計

實現低優先級后臺線程的模式?

我有一個(軟)實時系統查詢一些傳感器數據,進行一些處理,然后等待下一組傳感器數據。傳感器數據在接收器線程中讀取并放入隊列中,因此主線程“通過互斥體”進行“睡眠”,直到新數據到達。 還有其他的任務,如日志記錄或者在后臺做一些長期的計算。這些被實現為在其他線程中運行。 然而,重要的是,當主線程處理傳感器數據時,它應該具有最高優先級,這意味著其他線程根本不應該消耗任何CPU資源可能(目前的后

IT屋 2017/5/16 20:52:01 喜歡

軟件設計

幫我避免多重繼承。幫助我得到正確的oo設計

我有兩個班級LightA和LightB。我有LightB的源代碼,但不是LightA的源代碼。我用LightDimDip擴展了LightB。即 LightDimDip:extends LightB 。現在我需要將DimDip功能應用于lightB。 任何人都可以提出良好的OOP設計。 再次提醒您,我無法修改LightA。 解決方案 燈是否有通用的界面?在這種情況下,我想你可以在

IT屋 2017/5/16 20:51:28 喜歡

軟件設計

代理設計模式 - tutorialspoint.com示例

http://www.tutorialspoint.com/design_pattern/proxy_pattern.htm 嗨, 我正在尋找在java中使用 中的示例來了解代理設計模式鏈接上面。在主要的方法我不明白之間的區別: //圖像將從磁盤加載 image.display(); System.out.println(“”); //圖像不會從磁盤加載

IT屋 2017/5/16 20:51:15 喜歡

軟件設計

從基類指針訪問派生類成員的設計方案

我正在寫一個DAL / ORM庫。該圖書館將主要從GUI訪問,也可以從某些“業務級”應用程序訪問。我仍然在這個圖書館的設計階段,而且我不知道如何很好地解決以下問題。 在我目前的設計中有一個類,讓我們稱之為 List ,其中有一個容器是另一個類,屬性。屬性有兩種口味(A和B),主要具有相同的功能,但其一些功能是不同的。此外,$ 屬性的兩種口味都存儲值。值可以是不同的數據類型,包括但不限于POD

IT屋 2017/5/16 20:50:44 喜歡

軟件設計

繼承 - 子類中的變量初始化

我傾向于根據我在大學學到的“最佳實踐”類課程,在可能的基礎上,繼承組合。我正在看一個應用程序中的一些代碼,如下所示: 公共類A 受保護的_Name作為字符串 公共屬性名稱()As String 獲取 返回_Name 結束獲取 設置(ByVal值As String) _Name = value 結束集 結束屬性 結束類 公共類B 繼承A 結束類 公共類C 繼承B 結束

IT屋 2017/5/16 20:48:44 喜歡

江西快三开奖结果快