是否存在Java等效的C#的InvalidOperationException?

Jam*_*mes 45 java exception invalidoperationexception

我正在将一些C#代码转换为Java,我需要包含一个类似于C#的InvalidOperationException的异常.这样的事情存在吗?还有两种语言中的等效异常类型列表吗?谢谢.


我认为在我的特定情况下IllegalStateException是最合适的.感谢所有的回复.

Car*_*arl 58

可能IllegalStateException.

从我读到的有关InvalidOperationException的内容:"当方法调用对于对象的当前状态无效时引发的异常."

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

根据您的使用方式InvalidOperationException,我也可以看到IllegalArgumentExceptionUnsupportedOperationException成为您想要的.前者意味着,一般来说,这种方法可以调用,这次只是传递垃圾; 后者意味着该方法永远不适合调用此实例(不像IllegalStateException,这意味着有时可能适合调用主题方法,而不是此刻).


我不知道一般的c#<=> Java异常翻译.

  • 我更喜欢C#exception的名字 - 这不是非法的状态(状态很好),而是在当前状态下被尝试的操作是非法的.`IllegalStateException`意味着对象已进入非法状态(哦不!),事实并非如此 - 只是有人试图对它做错事,并被抓住(phew). (8认同)