繁体   English   中英

哪种例外最适合“您不应该在这种情况下运行此方法”方案?

[英]Which exception would best fit with a “you shouldn't be running this method in this context” scenario?

在接口中,我有一种方法可以在一种实现中使用,但不应在另一种实现中使用。 我正在考虑如果有人在特定的实现中使用该方法则抛出异常。 (这并不是说很容易偶然遇到该异常)

更具体地说,方法是getPlayer(String) ,该方法按名称获取Player Player是连接到服务器的客户端,但是在我的第二个实现中,将不可能获得任何已连接的客户端,因为第二个实现代表存储在列表中的其他(缓存的和技术上脱机的)服务器。

任何帮助表示赞赏。 让我知道代码粘贴是否可以更好地帮助描述场景的性质。

我会抛出一个IllegalStateException

表示已在非法或不适当的时间调用了方法。 换句话说,对于所请求的操作,Java环境或Java应用程序没有处于适当的状态。

或者如果您的实现根本不支持它,则也可以使用UnsupportedOperationException

抛出该信号以指示不支持请求的操作。

必须实现接口的所有方法。 这个问题的公认答案可能会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM