Java中是否有类似。net的NotImplementedException ?
当前回答
不,没有,它可能不存在,因为它的有效用途很少。我会在使用它之前三思。而且,创造自己确实很容易。
请参考这篇关于为什么它会出现在。net中的讨论。
我猜UnsupportedOperationException很接近,尽管它没有说操作只是没有实现,而是甚至没有支持。这可能意味着不可能有有效的实现。为什么该操作不受支持?它应该在那里吗? 界面隔离或利斯科夫替换问题?
如果工作正在进行中,我会使用ToBeImplementedException,但我从来没有发现自己定义了一个具体的方法,然后把它放在生产环境中太长时间,因此需要这样的异常。
其他回答
不,没有,它可能不存在,因为它的有效用途很少。我会在使用它之前三思。而且,创造自己确实很容易。
请参考这篇关于为什么它会出现在。net中的讨论。
我猜UnsupportedOperationException很接近,尽管它没有说操作只是没有实现,而是甚至没有支持。这可能意味着不可能有有效的实现。为什么该操作不受支持?它应该在那里吗? 界面隔离或利斯科夫替换问题?
如果工作正在进行中,我会使用ToBeImplementedException,但我从来没有发现自己定义了一个具体的方法,然后把它放在生产环境中太长时间,因此需要这样的异常。
我认为java.lang.UnsupportedOperationException就是你要找的。
本着Stackoverflow是Reddit和Wikipedia的结合的精神,这里有一些与问题相关的附加信息,也可以是问题的答案。
当你要求NetBeans IDE创建一个缺失的实现时,它会使用UnsupportedOperationException:
void setPropertiesWithReader(IDataReader rdr)
{
throw new UnsupportedOperationException("Not supported yet."); // Generated from nbfs://nbhost/SystemFileSystem/Templates/Classes/Code/GeneratedMethodBody
}
如果它对NetBeans足够好,对我们也足够好。
Commons Lang手上有。或者你可以抛出一个UnsupportedOperationException。
你可以自己做(我就是这么做的)——为了不被异常处理所困扰,你只需要扩展RuntimeException,你的类看起来就像这样:
public class NotImplementedException extends RuntimeException {
private static final long serialVersionUID = 1L;
public NotImplementedException(){}
}
您可以扩展它以接收消息—但是如果您像我这样使用该方法(也就是说,作为提醒,仍然有一些东西需要实现),那么通常不需要额外的消息。
我敢说,我只使用这种方法,当我在开发一个系统的过程中,使我更容易不失去跟踪哪些方法仍然没有正确实现:)
推荐文章
- 如何为构造函数定制Visual Studio的私有字段生成快捷方式?
- 为什么Visual Studio 2015/2017/2019测试运行器没有发现我的xUnit v2测试
- 在流中使用Java 8 foreach循环移动到下一项
- 访问限制:'Application'类型不是API(必需库rt.jar的限制)
- 用Java计算两个日期之间的天数
- 如何配置slf4j-simple
- AppSettings从.config文件中获取值
- 在Jar文件中运行类
- 带参数的可运行?
- 如何检查IEnumerable是否为空或空?
- 我如何得到一个字符串的前n个字符而不检查大小或出界?
- 没有ListBox。SelectionMode="None",是否有其他方法禁用列表框中的选择?
- 我可以在Java中设置enum起始值吗?
- 在c#代码中设置WPF文本框的背景颜色
- Java中的回调函数