所以我正在这个项目上工作,而且我在如何构造这个问题上遇到了麻烦。基本上,这是我所拥有的:继承 - 如何构造一个父类与儿童
Main Class instansiates Listener Class。
Listener类侦听数据包。
当我收到数据包时,Listener类将创建一个Handler类的新实例(它是一个可运行的)。 Handler类然后读取数据包数据并确定数据包类型(重启,关机等)并完成它所需要的。
我想要做的,是有一个父类的数据包,然后有子类的所有不同的数据包类型RebootPacket,ShutdownPacket等
我只打算用吨IF语句的处理程序类来创建数据包类的实例(如果packetType =“reboot”,RebootPacket数据包=新的RebootPacket),但是,我觉得应该有更好的方法来做到这一点。我可以如何使用多态性来做到这一点?任何建议表示赞赏。
林不知道什么是数据包在你的情况下,但即时通讯猜测你通过网络发送数据?当对象进入时,最好的方法是使用'instanceof'或者检查类的类型==你在找什么 –
@VinceEmigh那么通过网络发送的实际数据就是文本,就像一串... – user3180103
为什么不使用Object流?看起来好像这就是你想要做的反正。如果你使用阻塞io,ObjectOutputStream可以发送任何实现Serializable的对象。如果不是,那么是的,您需要检查字符串值以查看您需要创建的内容 –