`
WWH245235482
  • 浏览: 13685 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

基础异常

阅读更多
基础的异常:

1、什么是异常?

什么时候会出现异常?其实出现异常了不就是代表你的代码出现了问题了嘛!所以可以说异常其实看做是对问题的描述,java是面向对象的语言,正所谓万物皆对象,所以,java中异常是将问题进行对象的封装。



异常:

Throwable

                |-error

                |-Exception

                       |-RuntimeException

异常(Exception)分为两种:

一种是编译时异常:编译时异常,就需要抛出或者捕获处理,不然编译就会失败

一种是运行时异常(RuntimeException):不需要进行任何处理,编译器也不会检查出来,就让它存在,然后在运行时出现问题,使得程序停止。然后就需要对代码进行修正。                         



2、异常具有什么特性?

异常具有可抛性。同时也只有异常体系具有可抛性。



3、对于异常的处理有两种方式,一种就是讲异常抛出,通常就是throw,throws,这两个单词的区别,在下面再说,第二中就是try{}catch{}.。



4、throw:作用于方法内部,讲异常进行对象的封装,然后抛出,如:throw new Exception();这里使用了new,从这也可看出异常是对问题的一个封装。

throws:作用于方法上,其实就相当于一个声明,告诉调用者,我这里会抛出异常,让调用者做好准备,或者是处理,或者是接着抛出。



5、如果不讲异常抛出。就必须使用捕获处理。捕获处理一共有两种方式

第一种方式:try{

} catch() {

}

第二种方式:try{

被检测代码;

} catch() {

处理异常的代码;

} finally {

一定会执行的代码;

}

注:一个try后面可以跟多个catch,不过有一条,父类的catch放在最下面



6、第三种方式

try{

} finally {

}

这个时候因为没有catch,也就是没有处理异常的代码,所以也就是必须要将异常抛出,需要再方法上声明异常,在方法内抛出异常。



7、finally:finally内的代码因为基本上都会被执行的。即使出现了异常,也会执行。

有一种特殊情况:在执行到System.exit(0);这个代码说明了正常退出程序,关闭了jvm,将所有的内存释放了。所以finally内的代码就不能执行了



8、子类抛出的异常必须是父类的子类或子集,也可以跟父类抛出一样的异常。

如果父类没有抛出异常,则子类即使有异常也只能捕获处理掉,不能抛出

例子:有两个异常A,B都是继承了Exception,而C异常继承了A异常,如果我调用了父类的方法,抛出了A异常,那么我如果调用子类继承重写父类的这个方法,那么会抛出A,B,C中的那个异常呢?

只可能抛出A,C异常,不可能抛出B异常
1
2
分享到:
评论

相关推荐

    Java SE 基础 异常篇 思维导图总结

    Java 后端语言 JavaSE 基础 异常篇 思维导图总结

    JAVA程序设计基础异常处理和常用系统类PPT教案学习.pptx

    JAVA程序设计基础异常处理和常用系统类PPT教案学习.pptx

    程序员 分页,返回值,基础异常封装

    在Controller层分页,返回值包装工具类 用途:可以用来异常封装,公用参数封装,分页数据封装 可以基于:本工具优化前端的展示数据,可以继承于该类 可以做为参考:自定义自己的工具类 总之:通常用的工具都有

    java基础:异常学习ppt(学习模板)

    java基础异常学习ppt 学完本次课程后,你能够 了解异常概念 理解Java异常处理机制 会捕捉异常 会抛出异常 了解Java异常体系结构

    iOS开发异常捕获上传至邮箱

    - `NSException`: iOS自带的基础异常类,可以用来捕获和处理Objective-C中的异常。 - `NSSetUncaughtExceptionHandler`: 这是iOS提供的一种全局异常处理方法,可以设置一个异常处理器函数,当未被捕获的异常出现时...

    java错误大全(包括基本异常和开源框架出现的异常)

    Java错误大全涵盖了从基础异常到特定开源框架如Hibernate和Struts中可能出现的异常情况。以下是一些关键知识点的详细说明: 1. **错误类型:**Java中的错误通常分为两种主要类型,异常(Exception)和错误(Error)...

    零基础学Java异常处理

    零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理...

    Java异常处理.md

    1. **基础异常捕获**: - 当代码执行过程中出现如除数为零的`ArithmeticException`等错误时,Java会立即转至相应的catch块进行异常处理,如输出错误信息并打印堆栈跟踪。 2. **finally块的使用**: - 不论try块中...

    实验异常处理

    用户自定义异常是程序员根据特定需求创建的异常类,它们通常继承自系统提供的基础异常类。通过定义自定义异常,我们可以更精确地表示和处理特定类型的错误。例如,在Java中,可以这样创建一个新的异常类: ```java ...

    python 基础 第15单元-异常及模块.ppt

    python基础异常模块

    优质资料(2021-2022年收藏)史上最全的Java中所有Exception异常中英文对照.docx

    4. `AWTException`:这是抽象窗口工具包(AWT)中的基础异常类,通常在AWT组件或事件处理中遇到错误时抛出。 5. `ClassNotFoundException`:在类加载器尝试加载类时,如果找不到指定的类,就会抛出此类异常。 6. `...

    大学本科Java基础课件涵盖项目源代码课件PPT.zip

    Java基础 异常处理pptx Java基础 枚举&注解pptx Java基础泛型docx Java基础_网络编程pptx Java基础面向对象pptx Java基础_高级类特性.pptx Java基础实战Bank项目文档需求源代码 01 Java基础实战Bank项目文档需求源...

    HOOK异常处理.rar

    二、HOOK异常处理基础 异常处理是程序运行过程中对错误和异常情况的处理机制。在Windows系统中,异常处理通常涉及异常向量表和线程上下文等概念。当程序出现未处理的异常时,系统会按照异常向量表中的顺序寻找合适...

    一种Android运行时异常复现方法.pdf

    文章指出,传统的Java异常处理机制提供的基础异常信息(如方法全名、代码行、异常类型、异常消息和时间)虽然能指示异常发生的位置,但通常无法揭示引发异常的前置操作。因此,开发者需要能够复现异常以便更好地理解...

    ios Crash异常捕捉demo

    `NSException`是Objective-C中的基础异常类,用于表示运行时错误。当程序执行过程中遇到无法恢复的错误,如除以零、无效的对象操作等,会抛出`NSException`。通过自定义异常处理器,我们可以捕获并处理这些异常,...

    c++ 两个基本异常处理 源代码

    异常基础 异常是在程序执行过程中发生的非正常事件,可能导致程序无法继续正常运行。C++通过异常处理机制提供了一种在运行时捕获和处理错误的方式,而不是通过返回值或全局变量。 ### 2. `try`块 `try`块是异常...

    JAVA异常基础入门

    Java异常基础入门主要涵盖以下几个关键知识点: 1. **异常的概念**:在程序执行过程中,当遇到预期之外的问题或错误时,这些非正常情况被称为异常。Java中的异常是通过`Exception`类及其子类来表示的,它允许程序在...

    Python语言基础:异常.pptx

    异常是编程过程中不可避免的一部分,特别是在Python这种动态类型的高级编程语言中。当程序执行时遇到预期之外的情况,如尝试除以零、访问数组的无效索引、打开不存在的文件等,Python会抛出一个异常。如果不捕获并...

Global site tag (gtag.js) - Google Analytics