Java异常处理机制(捕获异常、自定义异常)

本文介绍了Java异常处理机制,包括异常的概念、分类、处理方式和自定义异常。异常分为检查异常(编译期异常)和未检查异常(运行时异常),如ArrayIndexOutOfBoundsException、NullPointerException等。Java中处理异常通常使用try-catch-finally结构或throws关键字。文章还探讨了自定义异常的实现,分为继承自Exception和RuntimeException,以及如何在实际编程中应用自定义异常。
摘要由CSDN通过智能技术生成

异常处理机制

一、异常概念

异常是程序在编译或运行过程出现的例外,这些例外在有的可以避免有的却无法避免

二、异常分类

检查异常也称为编译期异常

  • 不可避免 必须进行异常处理,要不编译器报错
  • Exception以及它的子类(除去RuntimeException)

未检查异常也称为运行时异常

  • 可以避免 不需要必须处理
  • RuntimeException以及它的子类

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CcsuFAwN-1627285642364)(C:/Users/lenovo/AppData/Roaming/Typora/typora-user-images/image-20210726140833377.png)]

常见异常:
数组下标越界异常:ArrayIndexOutOfBoundsException
字符串下标越界异常:StringIndexOutOfBoundsException
解析异常:ParseException
数字格式化异常:NumberFormatException
输入不匹配异常:InputMismatchException
文件找不到异常:FileNotFoundException
算术异常:ArithmeticException
空指针异常:NullPointerException
没有这样的元素异常:NoSuchElementException
类型转换异常:ClassCastException

栈溢出异常:StackOverfflowError

异常:

AclNotFoundException, ActivationException, AlreadyBoundException, ApplicationException, AWTException, BackingStoreException, BadAttributeValueExpException, BadBinaryOpValueExpException, BadLocationException, BadStringOperationException, BrokenBarrierException, CertificateException, ClassNotFoundException, CloneNotSupportedException, DataFormatException, DatatypeConfigurationException, DestroyFailedException, ExecutionException, ExpandVetoException, FontFormatException, GeneralSecurityException, GSSException, IllegalAccessException, IllegalClassFormatException, InstantiationException, InterruptedException, IntrospectionException, InvalidApplicationException, InvalidMidiDataException, InvalidPreferencesFormatException, InvalidTargetObjectTypeException, InvocationTargetException, IOException, JAXBException, JMException, KeySelectorException, LastOwnerException, LineUnavailableException, MarshalException, MidiUnavailableException, MimeTypeParseException, MimeTypeParseException, NamingException, NoninvertibleTransformException, NoSuchFieldException, NoSuchMethodException, NotBoundException, NotOwnerException, ParseException, ParserConfigurationException, PrinterException, PrintException, PrivilegedActionException, PropertyVetoException, RefreshFailedException, RemarshalException, RuntimeException, SAXException, ScriptException, ServerNotActiveException, SOAPException, SQLException, TimeoutException, TooManyListenersException, TransformerException, TransformException, UnmodifiableClassException, UnsupportedAudioFileException, UnsupportedCallbackException, UnsupportedFlavorException, UnsupportedLookAndFeelException, URIReferenceException, URISyntaxException, UserException, XAException, XMLParseException, XMLSignatureException, XMLStreamException, XPathException

三、异常处理方式

Java编译期异常必须要进行处理,否则Java源文件在编译时编译器会提示错误,且源文件无法成功编译

Java编译期异常的处理方式有两种

  • 使用try、catch、finally关键字捕获异常
  • 使用throws关键字声明抛出异常

使用try、catch、finally捕获异常
try{
//可能会出现异常的代码
//如果异常,内部任何程序都不会执行、
return;
}catch(ParseException e){
//捕获执行的代码
}finally{
//不管是否发生异常都要执行的代码
return;
}
先执行finally里的,后执行try里的。

实例演示:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黎明之道

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值