国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

優(yōu)化工具箱中國(guó)優(yōu)化網(wǎng)

優(yōu)化工具箱,中國(guó)優(yōu)化網(wǎng),一 網(wǎng)站建設(shè)管理基本情況,大嶺山網(wǎng)站仿做背景: 游戲服務(wù)器中,多態(tài)可以說體現(xiàn)的淋漓盡致。 如: 1.開啟條件。有的系統(tǒng)是根據(jù)玩家等級(jí),有的是根據(jù)通關(guān)第幾關(guān)。 2.商店可能有不同類型的商店。 3.任務(wù)系統(tǒng)中,不同的計(jì)數(shù)類型,不同的任務(wù)目標(biāo)類型?!?article class="baidu_pl">

背景:

游戲服務(wù)器中,多態(tài)可以說體現(xiàn)的淋漓盡致。

如:

1.開啟條件。有的系統(tǒng)是根據(jù)玩家等級(jí),有的是根據(jù)通關(guān)第幾關(guān)。

2.商店可能有不同類型的商店。

3.任務(wù)系統(tǒng)中,不同的計(jì)數(shù)類型,不同的任務(wù)目標(biāo)類型。

4.功能開啟中,不同的系統(tǒng)開啟條件不同。

....

稍微復(fù)雜一點(diǎn)的系統(tǒng)都會(huì)涉及到多態(tài)。

我們往往需要采用一種一致的接口去處理,這樣子可以避免冗余代碼。但是他們需要的數(shù)據(jù)卻不同。

經(jīng)過我的實(shí)踐,我覺得一種比較好的寫法如下:

ETest.java? // 枚舉所有的類型

package org.example.enumDuoTai;import org.example.enumDuoTai.data.ATestData;
import org.example.enumDuoTai.data.BTestData;
import org.example.enumDuoTai.data.ITestData;public enum ETest {A {@Overridepublic void test(ITestData data) {ATestData aTestData = data.get();System.out.println("roleId="+ aTestData.getRoleId() + " a=" + aTestData.getA());}},B {@Overridepublic void test(ITestData data) {BTestData bTestData = data.get();System.out.println("sn="+ bTestData.getSn() + " B=" + bTestData.getB());}},;public abstract void test(ITestData data);
}

ITestData.java // 數(shù)據(jù)接口

package org.example.enumDuoTai.data;@SuppressWarnings("all")
public interface ITestData {default <T extends ITestData> T get(){return (T)this;}
}

ATestData.java // 數(shù)據(jù)參數(shù)實(shí)現(xiàn)1

package org.example.enumDuoTai.data;import lombok.AllArgsConstructor;
import lombok.Data;@Data
@AllArgsConstructor
public class ATestData implements ITestData{private long roleId;private int a;
}

BTestData.java //?數(shù)據(jù)參數(shù)實(shí)現(xiàn)

package org.example.enumDuoTai.data;import lombok.AllArgsConstructor;
import lombok.Data;@Data
@AllArgsConstructor
public class BTestData implements ITestData{private int sn;private String b;
}

Main.java

package org.example.enumDuoTai;import org.example.enumDuoTai.data.ATestData;
import org.example.enumDuoTai.data.BTestData;public class Main {public static void main(String[] args) {ETest.A.test(new ATestData(4097, 1));ETest.B.test(new BTestData(1001, "jn"));}
}/*
roleId=4097 a=1
sn=1001 B=jn*/

總結(jié):

這樣子,我們就可以在枚舉中無限擴(kuò)展,像我做的MMO游戲,排行榜來說,最多也就35種,看起來行數(shù)多了點(diǎn),但是實(shí)際上維護(hù)性還是可以。這種枚舉的多態(tài),實(shí)現(xiàn)比較簡(jiǎn)單。

這樣子通過接口,讓所有的操作都是強(qiáng)類型的,是比較簡(jiǎn)單的。

而且枚舉有values,天然實(shí)現(xiàn)了遍歷,也就是工廠模式。

http://aloenet.com.cn/news/35143.html

相關(guān)文章:

  • 電子商務(wù)網(wǎng)站建設(shè)與維護(hù)讀書報(bào)告百度怎么做關(guān)鍵詞優(yōu)化
  • 網(wǎng)站做商標(biāo)在那類怎么制作網(wǎng)頁頁面
  • 合肥品牌型網(wǎng)站建設(shè)地址上海短視頻seo優(yōu)化網(wǎng)站
  • 成都集團(tuán)網(wǎng)站建設(shè)核酸檢測(cè)最新消息
  • 信息造價(jià)網(wǎng)seo是啥
  • 工業(yè)設(shè)計(jì)招聘1688seo優(yōu)化是什么
  • 別的網(wǎng)站可以做彈幕網(wǎng)絡(luò)營(yíng)銷ppt
  • 網(wǎng)站建設(shè)zb533公司網(wǎng)站首頁排名
  • 福建省建設(shè)工程職業(yè)注冊(cè)網(wǎng)站如何建造一個(gè)網(wǎng)站
  • 純手工建網(wǎng)站新東方英語線下培訓(xùn)學(xué)校
  • 安卓系統(tǒng)開發(fā)平臺(tái)搜索引擎優(yōu)化的技巧有哪些
  • 佛山網(wǎng)站設(shè)計(jì)多少錢而的跟地seo排名點(diǎn)擊軟件
  • 廣州網(wǎng)站開發(fā)企業(yè)網(wǎng)絡(luò)推廣的方法有哪些
  • 國(guó)內(nèi)做網(wǎng)站建設(shè)好的一起來看在線觀看免費(fèi)
  • wordpress的url電腦優(yōu)化軟件哪個(gè)好用
  • 做網(wǎng)站的貼吧網(wǎng)絡(luò)營(yíng)銷的步驟
  • 代辦公司注冊(cè)靠譜嗎優(yōu)化大師 win10下載
  • 靠做網(wǎng)站可以賺錢么想要網(wǎng)站推廣版
  • 網(wǎng)站域名在哪買近一周的新聞大事熱點(diǎn)
  • 備案時(shí)暫時(shí)關(guān)閉網(wǎng)站交換鏈接營(yíng)銷的典型案例
  • 有哪些做任務(wù)網(wǎng)站學(xué)好seo
  • 濱州網(wǎng)站建設(shè)公司本周時(shí)事新聞概要10條
  • 網(wǎng)站做鏈輪會(huì)被懲罰嗎公司網(wǎng)站推廣方法
  • wordpress 換域名 全站301重定向百度熱搜榜小說排名
  • png圖片可以做網(wǎng)站圖標(biāo)嗎建設(shè)網(wǎng)站需要多少錢
  • 河源城鄉(xiāng)規(guī)劃建設(shè)局網(wǎng)站軟文新聞發(fā)布網(wǎng)站
  • 動(dòng)態(tài)網(wǎng)站開發(fā)參考資料google建站推廣
  • 自己建的網(wǎng)站可以用筆記本做服務(wù)器嗎sem專員
  • 泗洪網(wǎng)站設(shè)計(jì)公司ip域名查詢網(wǎng)站入口
  • 抖音代運(yùn)營(yíng)排名seo公司排行