亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術(shù)文章
文章詳情頁

java - 這種情況怎么設(shè)計class? 有什么設(shè)計模式嗎

瀏覽:168日期:2024-03-23 14:02:51

問題描述

一種通過硬件設(shè)備的數(shù)據(jù)用了特殊格式,前一段是id,后一段是數(shù)據(jù),

前面一段,代表它是一段類型為A, B, C等等哪一種類型的數(shù)據(jù)。

根據(jù)前面的類型,我們?nèi)『竺嬷械哪硯孜唬鏏類型我們需要數(shù)據(jù)取數(shù)據(jù)的1-3位,B類型則需要第20和第22位。

現(xiàn)在設(shè)計的時候只需要能接受a類和b類就行了,但是未來想要接受c類, d類等等,同時對數(shù)據(jù)進行的操作也不同,比如a類需要把1-3位都乘二,b類第二十位加1,第二十二位不變z

問題是應(yīng)該怎么樣設(shè)計,未來拓展的時候方便呢?比如我想支持d類,不用重寫代碼....

問題解答

回答1:

復(fù)雜的話用策略模式,不復(fù)雜的直接OO的繼承,不同類型的消息交給不同的子類去處理。

回答2:

應(yīng)該把數(shù)據(jù)協(xié)議格式規(guī)定好:例如:高3位代表類型,中間2位代表協(xié)議版本,后面代表數(shù)據(jù)。協(xié)議規(guī)定好后,通過模板方法來處理,將具體解析放到子類,通用的放到父類。這樣在擴展時,不需要改動原有代碼,只需要寫新的實現(xiàn)就可以。

回答3:

根本用不到設(shè)計模式,傳統(tǒng)的繼承就可以,各個子類分別取不同的字段就可以。

回答4:

如果一定要使用設(shè)計模式,可以考慮一哈策略模式

回答5:

還需要判斷一下后續(xù)的使用者,工廠模式,策略模式,代理模式可能都能滿足你擴展的需求,其實重要的是想法,遵照六原則設(shè)計吧,沒必要非要套某一個模式,根據(jù)需求,代碼慢慢演變,最后可能自然的就符合某個模式了,也可能是多種模式的組合。

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 玖玖色视频 | 国产jk福利视频在线观看 | 日本高清视频免费在线观看 | 久久女同互慰一区二区三区 | 精品日本一区二区三区在线观看 | 草草影院www色欧美极品 | 67194在线午夜亚洲 | 国产日韩欧美网站 | 一级毛片免费播放 | 麻豆国产96在线 | 日韩 | 在线a网站 | 欧美成人免费高清视频 | 在线视频日韩精品 | 久久手机精品视频 | 久久狠狠色狠狠色综合 | 在线观看国产一区二区三区99 | 久久亚洲国产午夜精品理论片 | 亚洲一级毛片免费看 | 在线视频一区二区三区 | 国产黄色在线网站 | 久久99热久久精品91 | 性8sex亚洲区入口 | 好吊妞国产欧美日韩视频 | 欧美三级观看 | 国产精品国产三级国产在线观看 | 国产成人影院一区二区 | 欧美一级片免费 | 交videos人妖 | 国产图片亚洲精品一区 | 久久精品国产99久久久 | 在线看毛片网站 | 久久99久久精品国产只有 | 国产欧美日韩综合精品无毒 | 亚洲日韩精品欧美一区二区 | 国产成人精品日本亚洲网站 | 久久一区二区三区99 | 欧美精品自拍 | 2017天天爽夜夜爽精品视频 | 特级黄色毛片在放 | 中文字幕日韩国产 | 伊人久久在线视频 |