《Java2网络编程基础》 第五章 Java异常和垃圾收集

Java2网络编程基础 第五章 ⑤ Jav异常和垃圾收集 Designed by Chiyong C2005
1 Designed by Chiyong,©2005 Java2 网络编程基础 Java异常和垃圾收集 第五章

回顾 类中的静态成员属于类。 final修饰符可应用于类、方法和变量 定义抽象类的目的是提供可由其子类共享 的一般形式。 接口就是需要由其他类实现的行为模板。 封装类就是封装基本数据类型的类 内部类指嵌入外部类内的类。 Designed by Chiyong C2005
2 Designed by Chiyong,©2005 回顾 • 类中的静态成员属于类。 • final 修饰符可应用于类、方法和变量。 • 定义抽象类的目的是提供可由其子类共享 的一般形式。 • 接口就是需要由其他类实现的行为模板。 • 封装类就是封装基本数据类型的类 。 • 内部类指嵌入外部类内的类

目枥 了解异常的定义 了解异常的分类 掌握try、 catch和 finally语句的用法 掌握 throw、 throws子句的用法 掌握如何定义自己的异常 了解Java的垃圾收集机制 Designed by Chiyong C2005
3 Designed by Chiyong,©2005 目标 • 了解异常的定义 • 了解异常的分类 • 掌握 try、catch 和 finally 语句的用法 • 掌握throw、throws子句的用法 • 掌握如何定义自己的异常 • 了解 Java 的垃圾收集机制

什么是异常 运行时发生的错误称为异常 Exception) 处理这些异常就称为异常处理。 旦引发异常,程序将突然中止,且控制 将返回操作系统。 发生异常后此前分配的所有资源都将保留 在相同的状态,这将导致资源漏洞。 Designed by Chiyong C2005
4 Designed by Chiyong,©2005 什么是异常 • 运行时发生的错误称为异常(Exception)。 • 处理这些异常就称为异常处理。 • 一旦引发异常,程序将突然中止,且控制 将返回操作系统。 • 发生异常后此前分配的所有资源都将保留 在相同的状态,这将导致资源漏洞

何时使用Java中异常? 1)如果是可以预料到的,通过简单的表达式修改就可以处理 好的,就不必使用异常(如数组越界错误) 2)因为异常占用了JAVA程序的许多处理时间,简单的测试比 处理异常的效率更高。所以,建议将异常用于你无法预料或 无法控制的情况。(如打开远程文件,而 Error异常就不必 处理) (Eror的实例是JAVA运行时环境(JVM)中的内部错误,通 常是致命的,对它们你无法做太多的工作) 3)花费时间处理异常可能会影响你的代码的执行速度,但在 稍后的项目和在越来越大的程序中再次使用你的类时,这种 额外的小心将会给你带来极大的回报。(当然JAVA类库是 小心编写的,它已经足够强壮) Designed by Chiyong C2005
5 Designed by Chiyong,©2005 何时使用Java中异常? 1)如果是可以预料到的,通过简单的表达式修改就可以处理 好的,就不必使用异常(如数组越界错误) 2)因为异常占用了JAVA程序的许多处理时间,简单的测试比 处理异常的效率更高。所以,建议将异常用于你无法预料或 无法控制的情况。(如打开远程文件,而Error异常就不必 处理) (Error的实例是JAVA运行时环境(JVM)中的内部错误,通 常是致命的,对它们你无法做太多的工作) 3)花费时间处理异常可能会影响你的代码的执行速度,但在 稍后的项目和在越来越大的程序中再次使用你的类时,这种 额外的小心将会给你带来极大的回报。(当然JAVA类库是 小心编写的,它已经足够强壮)

异常体系结构2-1 所有异常类型都是 内置类 Throwable的 用于Java运行时系统 子类 来显示与运行时系 Object 统本身有关的错误 用于用户程序可能 捕获的异常:也 Throwable 用来创 白异常 类型子类的类。 Error Exception SQLException Runtime Exception A TERror ClassNotFoundException Thread Death ArithmeticException NullPointer Exception ,,N NumberF ormat Exceptio Eror类对象由Java虚拟机生成并抛出 Exception类对象由应用程序处理或抛出。 Designed by Chiyong C2005
6 Designed by Chiyong,©2005 异常体系结构 2-1 所有异常类型都是 内置类Throwable的 用于Java运行时系统 子类 来显示与运行时系 统本身有关的错误 用于用户程序可能 捕获的异常,也是 用来创建用户异常 类型子类的类。 Error类对象由Java虚拟机生成并抛出; Exception类对象由应用程序处理或抛出

异常体系结构2-2 Java中的异常是实际的对象,是从类 Throwable继承而来的派生类的 实例。 Throwable类有两个子类:Eror和 Exception Java的 Exception类实现了 Throwable接口并提供一些有用的特性来 处理异常,特别是为消息提供了管道,包含一个栈跟踪 类 Exception的子类分为两组: 1)运行时异常(类 Runtimeexception的子类)通常是因为代码不够 强壮而发生。 各种运行时异常都继承 Exception类,负责记录抛出的异常信息。 2)其它异常(例如: IOException) Designed by Chiyong C2005
7 Designed by Chiyong,©2005 异常体系结构 2-2 Java中的异常是实际的对象,是从类Throwable继承而来的派生类的 实例。 Throwable类有两个子类:Error和Exception Java 的 Exception 类实现了 Throwable 接口并提供一些有用的特性来 处理异常,特别是为消息提供了管道,包含一个栈跟踪。 类Exception的子类分为两组: 1)运行时异常(类RuntimeException的子类)通常是因为代码不够 强壮而发生。 各种运行时异常都继承 Exception 类,负责记录抛出的异常信息。 2)其它异常(例如:IOException)

常见异常及其用途2-1 异常 说明 RuntimeException ava. lang包中多数异常的基类 ArithmeticException 算术错误,如除以0 IllegalArgumentException 方法收到非法参数 ArraylndexoutofBounds Exception数组下标出界 NullPointer Exception 试图访问nul对象引用 SecurityException 试图违反安全性 ClassNotFoundException 不能加载请求的类 Designed by Chiyong C2005
8 Designed by Chiyong,©2005 常见异常及其用途 2-1 异常 说明 RuntimeException java.lang包中多数异常的基类 ArithmeticException 算术错误,如除以0 IllegalArgumentException 方法收到非法参数 ArrayIndexOutOfBoundsException 数组下标出界 NullPointerException 试图访问null 对象引用 SecurityException 试图违反安全性 ClassNotFoundException 不能加载请求的类

常见的异常及其用途2-2 异常 说明 AWTEXception AWT中的异常 IOException IO异常的根类 FileNotFoundException 不能找到文件 EOFException 文件结束 IllegalAccessException 对类的访问被拒绝 NoSuchMethodException 请求的方法不存在 InterruptedException 线程中断 Designed by Chiyong C2005
9 Designed by Chiyong,©2005 常见的异常及其用途 2-2 异常 说明 AWTException AWT 中的异常 IOException I/O 异常的根类 FileNotFoundException 不能找到文件 EOFException 文件结束 IllegalAccessException 对类的访问被拒绝 NoSuchMethodException 请求的方法不存在 InterruptedException 线程中断

Java异常处理基础 Jav异常处理机制采用一个统一和相对简单的 抛出(hrow)和处理错误的机制。如果一个方法 本身能引发异常,当所调用的方法出现异常时 调用者可以捕获( catch)异常使之得到处理;也可 以回避异常,这时异常将在调用的堆栈中向下 传递,直到被处理。 Designed by Chiyong C2005
10 Designed by Chiyong,©2005 Java异常处理基础 • Java异常处理机制采用一个统一和相对简单的 抛出(throw)和处理错误的机制。如果一个方法 本身能引发异常,当所调用的方法出现异常时, 调用者可以捕获(catch)异常使之得到处理;也可 以回避异常,这时异常将在调用的堆栈中向下 传递,直到被处理
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《Java2网络编程基础》 第四章 类的高级特性.ppt
- 《Java2网络编程基础》 第三章 类,对象和包.ppt
- 《Java2网络编程基础》 第二章 Java编程基础.ppt
- 《Java2网络编程基础》 第一章 JAVAJava编程简介.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第四章 需求分析.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第十章 面向对象方法学引论.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第六章 详细设计.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第八章 软件测试.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第五章 总体设计.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第二章 软件生命周期及软件开发模式.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第九章 软件维护.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第三章 计算机系统工程.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第七章 编码.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第一章 软仵危机与软件工程.ppt
- 《Thinking in Java》中文版 致读者.pdf
- 《Thinking in Java》中文版 介绍.pdf
- 《Thinking in Java》中文版 第九章 用异常来处理错误.pdf
- 《Thinking in Java》中文版 第八章 接口与内部类.pdf
- 《Thinking in Java》中文版 第七章 多态性.pdf
- 《Thinking in Java》中文版 第六章 复用类.pdf
- 《Java2网络编程基础》 第六章 GU编程.ppt
- 《Java2网络编程基础》 第七章 AWT事件模型.ppt
- 《Java2网络编程基础》 第八章 Applet和图形编程.ppt
- 《Java2网络编程基础》 第九章 Swing.ppt
- 《精品JAVA专业版》 第十章 多线程.ppt
- 《精品JAVA专业版》 第十一章 JDBC.ppt
- 《微机原理》课程电子教案(PPT课件讲稿)第一章 绪论、第二章 微处理器的工作模式.ppt
- 《微机原理》课程电子教案(PPT课件讲稿)第三章 微处理器的实模式软件结构及程序设计.ppt
- 《微机原理》课程电子教案(PPT课件讲稿)第四章 保护模式软件结构.ppt
- 《微机原理》课程电子教案(PPT课件讲稿)第五章 半导体存储器接口技术.ppt
- 《微机原理》课程电子教案(PPT课件讲稿)第六章 微型计算机系统总线.ppt
- 《微机原理》课程电子教案(PPT课件讲稿)第七章 输入输出接口技术.ppt
- 《微机原理》课程电子教案(PPT课件讲稿)第八章 中断技术.ppt
- 《微机原理》课程电子教案(PPT课件讲稿)第九章 串行通信接口及其应用.ppt
- 《微机原理》课程电子教案(PPT课件讲稿)第十章 数据采集系统及其应用.ppt
- 《C/C++程序设计基础》课程教学资源(PPT课件讲稿)目录.ppt
- 《C/C++程序设计基础》课程教学资源(PPT课件讲稿)第十章 指针.ppt
- 《C/C++程序设计基础》课程教学资源(PPT课件讲稿)第十一章 结构体与共用体.ppt
- 《C/C++程序设计基础》课程教学资源(PPT课件讲稿)第十二章 位运算.ppt
- 《C/C++程序设计基础》课程教学资源(PPT课件讲稿)第十三章 文件.ppt