Java 入门 六 (Java 异常处理)
李守宏老师讲的很详细就摘录过来 懒得写了
1:什么是异常:
异常是指程序运行时候发生的错误.这里特指运行时,编译调试产生的那些不叫异常.设置异常处理是为了让程序不会发生不可预知的错误,然后停止了.
throw异常:java程序执行时出现的异常,会生成一个异常对象.这个对象由java自己实例化,然后交给java运行时,这个叫throw异常.
catch异常:运行时接收到异常对象时,寻找能处理这个异常的代码,这个叫catch异常
java中的每一个方法可能抛出的异常会在jdk文档中说明,我们只需把这个异常捕获即可.但不是所有的异常都需要捕获处理.
2:异常分类
Error:错误,由Java虚拟机生成抛出,程序不做处理.
Exception:所有异常类的父类,一般需要用户显式声明捕获
Runtime Exception :一类特殊的异常,如0除,下标越界等,处理比较繁琐.一般交给系统缺省的异常处理程序处理(程序不做处理)
3:异常如何被处理.
Try{
//可能抛出异常的语句
} catch(Execption1e) {
处理
}catch(Execption2 e) {
处理
}finally {
最后要做的(一定执行)
}
解释:
a:try代码包含可能产生异常的语句,try代码后边可以有一个或者多个catch,每个catch后面声明其能处理的特定异常并提供处理方法.
b: 当异常发生时,程序终止执行,根据错误类型执行相应catch中的代码.
c: finally语句无论是否有异常都要执行.
4:自定义异常
java也可以自定义异常,步骤如下:
a:通过继承java.lang.Exception 类声明自己的异常类.
b:在方法的适当位置生成自定义异常的实例,并用throw抛出.
c:在方法的声明部分用throw声明该方法可能抛出的异常.
Java 异常处理的原则
1:尽可能的处理异常
要尽可能的处理异常,如果条件确实不允许,无法在自己的代码中完成处理,就考虑声明异常。如果人为避免在代码中处理异常,仅作声明,则是一种错误和依赖的实践。
2:具体问题具体解决
异常的部分优点在于能为不同类型的问题提供不同的处理操作。有效异常处理的关键是识别特定故障场景,并开发解决此场景的特定相应行为。为了充分利用异常处理能力,需要为特定类型的问题构建特定的处理器块。
3:记录可能影响应用程序运行的异常
至少要采取一些永久的方式,记录下可能影响应用程序操作的异常。理想情况下,当然是在第一时间解决引发异常的基本问题。不过,无论采用哪种处理操作,一般总应记录下潜在的关键问题。别看这个操作很简单,但它可以帮助您用很少的时间来跟踪应用程序中复杂问题的起因。
若要通知一个应用程序特有的问题,有必要将应用程序转换为不同形式。若用业务特定状态表示异常,则代码更易维护。从某种意义上讲,无论何时将异常传到不同上下文(即另一技术层),都应将异常转换为对新上下文有意义的形式。
Java 异常处理是使用 Java语言进行软件开发和测试脚本开发中非常重要的一个方面。对异常处理的重视会是您开发出的代码更健壮,更稳定。
相关推荐
Java基础入门教程 第7章 Java中的异常处理(共26页).ppt Java基础入门教程 第8章 文件流的输入输出操作(共37页).ppt Java基础入门教程 第9章 Java的高级特性(共32页).ppt jdk api 1.7.chm JDK_API_1_6_zh_...
异常处理(共24页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 11.AWT编程(共46页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 12.Swing编程(共45页).ppt 推荐优质Java课程 ...
完整版 Java基础入门教程 Java程序语言设计 06 异常处理 异常和垃圾收集(共27页).ppt 完整版 Java基础入门教程 Java程序语言设计 07 网络编程 JDBC(共21页).ppt 完整版 Java基础入门教程 Java程序语言设计 07 ...
Java入门笔记5_异常
完整版精品java课件 Java基础入门教程 Java程序设计 第8章 异常处理(共27页).ppt 完整版精品java课件 Java基础入门教程 Java程序设计 第9章 输入输出流(共49页).ppt 完整版精品java课件 Java基础入门教程 Java...
Java异常是程序在运行过程中发生的问题,它们会打断程序的正常流程,需要程序员进行处理。 Java异常的类型 Java异常主要分为两大类:受检异常和非受检异常。受检异常需要在代码中显式处理,而非受检异常则可以由...
Java基础入门教程 第7章 Java中的异常处理(共26页).ppt Java基础入门教程 第8章 文件流的输入输出操作(共37页).ppt Java基础入门教程 第9章 Java的高级特性(共32页).ppt jdk api 1.7.chm JDK_API_1_6_zh_...
完整版精品java课件 Java基础入门教程 Java程序设计 第8章 异常处理(共27页).ppt 完整版精品java课件 Java基础入门教程 Java程序设计 第9章 输入输出流(共49页).ppt 完整版精品java课件 Java基础入门教程 Java...
【完整课程列表】 完整版 Java基础教程 Java入门教程 Java语言程序设计 第1章 认识Java(共61页).ppt 完整版 Java基础教程 Java...完整版 Java基础教程 Java入门教程 Java语言程序设计 第8章 异常处理(共33页).ppt
第2篇为Java语言高级语法,包括类、对象、方法、继承、多态、修饰符、接口、抽象类、内部类、Java异常处理和多线程编程。第3篇为Java语言编程进阶,包括Java编程常用知识、Java文件编程、Java文件I/O编程、Java TCP...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
异常处理(共24页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 11.AWT编程(共46页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 12.Swing编程(共45页).ppt 推荐优质Java课程 ...
异常处理(共24页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 11.AWT编程(共46页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 12.Swing编程(共45页).ppt 推荐优质Java课程 ...
异常处理(共24页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 11.AWT编程(共46页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 12.Swing编程(共45页).ppt 推荐优质Java课程 ...
完整版java基础入门教程由浅入深讲解 Java语言编程基础 第08章 异常处理(共20页).ppt 完整版java基础入门教程由浅入深讲解 Java语言编程基础 第09章 GUI界面设计(共38页).ppt 完整版java基础入门教程由浅入深...
异常处理(共24页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 11.AWT编程(共46页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 12.Swing编程(共45页).ppt 推荐优质Java课程 ...
异常处理(共24页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 11.AWT编程(共46页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 12.Swing编程(共45页).ppt 推荐优质Java课程 ...
异常处理(共24页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 11.AWT编程(共46页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 12.Swing编程(共45页).ppt 推荐优质Java课程 ...
异常处理(共24页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 11.AWT编程(共46页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 12.Swing编程(共45页).ppt 推荐优质Java课程 ...
异常处理(共24页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 11.AWT编程(共46页).ppt 推荐优质Java课程 疯狂Java语言编程 Java入门到进阶教程 12.Swing编程(共45页).ppt 推荐优质Java课程 ...