当前位置: 首页 > news >正文

建设网站推销愿景 做中国最受欢迎的互联网网站

建设网站推销,愿景 做中国最受欢迎的互联网网站,毕设做购物网站系统的原因,wordpress站长工作背景: 游戏服务器中,多态可以说体现的淋漓尽致。 如: 1.开启条件。有的系统是根据玩家等级,有的是根据通关第几关。 2.商店可能有不同类型的商店。 3.任务系统中,不同的计数类型,不同的任务目标类型。…

背景:

游戏服务器中,多态可以说体现的淋漓尽致。

如:

1.开启条件。有的系统是根据玩家等级,有的是根据通关第几关。

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

3.任务系统中,不同的计数类型,不同的任务目标类型。

4.功能开启中,不同的系统开启条件不同。

....

稍微复杂一点的系统都会涉及到多态。

我们往往需要采用一种一致的接口去处理,这样子可以避免冗余代码。但是他们需要的数据却不同。

经过我的实践,我觉得一种比较好的写法如下:

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 // 数据接口

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

ATestData.java // 数据参数实现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 // 数据参数实现

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*/

总结:

这样子,我们就可以在枚举中无限扩展,像我做的MMO游戏,排行榜来说,最多也就35种,看起来行数多了点,但是实际上维护性还是可以。这种枚举的多态,实现比较简单。

这样子通过接口,让所有的操作都是强类型的,是比较简单的。

而且枚举有values,天然实现了遍历,也就是工厂模式。

http://www.yayakq.cn/news/457355/

相关文章:

  • 购物网站补货提醒软件怎么做建网站如何备案
  • 集团网站建设成都免费网站服务器2020
  • 学做网站需要懂什么长春专业网站建设公司
  • 学做网站的基本专门做化妆的招聘网站
  • 专业格泰建站济南建设集团网站
  • 想建个板栗网站怎么做宠物网站怎么做
  • 网站前端页面设计做地图特效的网站
  • 慈溪做网站什么价综合性外贸网站建设
  • 上海怎么制作网站济南网站建设力推搜点网络ok
  • 宿城网站建设网站开发软件费用
  • 政务门户网站建设思想wordpress主题检测
  • 在百度上免费做网站页面黄石网站建设流程
  • 阳泉市住房保障和城乡建设管理局网站做网站的服务器
  • 网站怎么做飘窗wordpress 转 帝国
  • 专业网站建设的公司关键词优化公司哪家推广
  • 网站建设评比文章潍坊网站的优化
  • 专业的手机价格网站建设合肥最好的网站建设公司哪家好
  • 做物流网站有哪些内容绍兴网站制作软件
  • 网站开发中期检查网址搜索栏
  • 如何做繁体字网站网站实现多模板切换
  • 网站公司图片建网站可以用企业qq吗
  • 福田附近网站建设陕西建设系统个人信息查询网站
  • 企业网站建设计划表网站制作和维护费用
  • 微信网站怎么写页面设计零基础
  • 网站关键词排名怎么做查建筑企业信息的网站
  • 格力电器的网站建设评价全国十大计算机培训机构
  • 什么网站不能备案中国建行网站
  • 需要手机号注册的网站网站制作报价单
  • 创建网站 优帮云推广新产品最好的方法
  • 网站建设 实训题网站建设动态代码