我正在尝试找出与服务器和客户端共享枚举的最佳做法,它始终保存完全相同的数据。我知道如果我只是将代码复制并粘贴到服务器所具有的客户端中,那么它将无法工作,但我如何在两者之间共享这个对象的“库”呢?
例如:
public enum Misc
{
BAG ("Bag", 10, 1),
MAP ("Map", 10, 1),
SCROLL ("Sroll", 10, 1),
WAND ("Wand", 10, 1),
POTION ("Potion", 10, 1);
private String name;
private int value;
private double weight;
Misc(String name, int value, double weight)
{
this.name = name;
this.value = value;
this.weight = weight;
}
public String getName() { return this.name; }
public int value() { return this.value; }
public double weight() { return this.weight; }
}
我将通过网络发送这些枚举,例如通过网络从服务器到客户端写入Misc.BAG.toString()。在客户端上,我需要将收到的字符串转换回客户端上的Misc.BAG。只是将Items.jar作为具有相同枚举的库并使用Misc.ValueOf()将其转换回枚举工作或不?当我搜索一些说“是”和“否”时,我会得到有争议的答案。
如果我不能做前者,我将如何对客户端和服务器之间的枚举进行简单的引用?
答案 0 :(得分:0)
在两个应用程序中使用该类有什么问题?只需创建一个包,它将包含在客户端和服务器中。