首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Java中创建自定义异常类型?

如何在Java中创建自定义异常类型?
EN

Stack Overflow用户
提问于 2011-12-08 06:44:29
回答 7查看 361.5K关注 0票数 168

我想在Java中创建一个自定义异常,我该怎么做?

代码语言:javascript
复制
...

try{

...

String word=reader.readLine();

if(word.contains(" "))
  /*create custom exception*/

}
catch(){

当我使用throw new...创建自定义异常时,我获得了错误unreported exception...must be caught or declared to be thrown

EN

回答 7

Stack Overflow用户

发布于 2011-12-08 06:49:53

关于创建自定义异常类的很好的答案。如果您打算重用有问题的异常,那么我将遵循他们的回答/建议。但是,如果您只需要抛出一个带有消息的快速异常,则可以就地使用基异常类。

代码语言:javascript
复制
String word=reader.readLine();

if(word.contains(" "))
  /*create custom exeception*/
  throw new Exception("My one time exception with some message!");
}
票数 16
EN

Stack Overflow用户

发布于 2011-12-08 06:47:43

因为您可以只创建和抛出异常,所以可以像这样简单

代码语言:javascript
复制
if ( word.contains(" ") )
{
     throw new RuntimeException ( "Word contains one or more spaces" ) ;
}

如果您想要更正式,可以创建一个异常类

代码语言:javascript
复制
class SpaceyWordException extends RuntimeException
{

}

无论哪种方式,如果您使用RuntimeException,您的新Exception都将被取消选中。

票数 12
EN

Stack Overflow用户

发布于 2011-12-08 06:51:21

作为一个细心的程序员,经常会在特殊情况下抛出异常,值得一提的是一些通用的异常,如IllegalArgumentExceptionIllegalStateExceptionUnsupportedOperationExceptionIllegalArgumentException是我的最爱:

代码语言:javascript
复制
throw new IllegalArgumentException("Word contains blank: " + word);
票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8423700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档