我正在制作一个客户端 - 服务器游戏,其中套接字用于从共享包传递序列化数据对象。我的想法是客户端会向服务器发送不同的命令对象,而服务器会将更新对象发送到客户端。然后,从命令或更新继承的每个对象都有一个executeCommand()或applyUpdate()方法,因此服务器或客户端可以在收到它时运行它。
当我开始实际编码时,我很快意识到这不会按照我想要的方式工作,因为执行或更新方法需要某种对客户端或服务器特定对象的引用,即使它是在另一端编译的
我的新解决方案是改为实现一个getCommandName()方法,该方法只返回一个对于每个命令类型都不同的字符串,但到目前为止,它一直非常烦人且难以阅读。是否有更标准的方法来做这样的事情,让我保留一些我想要的多态行为?
另外,如果这个问题已经得到解答,请提前抱歉。有一些类似于我的问题,但他们似乎并没有完全回答我真正试图找到的问题。