public class ExceptionTypeTest {
public void doSomething()throws ArithmeticException{
System.out.println();
}
public static void main(){
ExceptionTypeTest ett = new ExceptionTypeTest();
ett.doSomething();
}
}
问题1:上面的程序能否编译通过?并说明理由。
解答:能编译通过。分析:按照一般常理,定义doSomething方法是定义了ArithmeticException异常,在main方法里里面调用了该方法。那么应当继续抛出或者捕获一下。但是ArithmeticException异常是继承RuntimeException运行时异常。java里面异常分为两大类:checked exception(检查异常)和unchecked exception(未检
查异常),对于未检查异常也叫RuntimeException(运行时异常),对于运行时异常,java编译器不要求你一定要把它捕获或者一定要继续抛出,但是对checked exception(检查异常)要求你必须要在方法里面或者捕获或者继续抛出.
问题2:上面的程序将ArithmeticException改为IOException能否编译通过?并说明理由。
解答:不能编译通过。分析:IOException extends Exception 是属于checked exception ,必须进行处理,或者必须捕获或者必须抛出
总结:java中异常分为两类:checked exception(检查异常)和unchecked exception(未检查异常),对于未检查异常也叫RuntimeException(运行时异常).
对未检查的异常(unchecked exception )的几种处理方式:
1、捕获
2、继续抛出
3、不处理
对检查的异常(checked exception,除了RuntimeException,其他的异常都是checked exception )的几种处理方式:
1、继续抛出,消极的方法,一直可以抛到java虚拟机来处理
2、用try...catch捕获
注意,对于检查的异常必须处理,或者必须捕获或者必须抛出
分享到:
相关推荐
- **泛型**:从Java 5开始,集合框架引入了泛型,允许在编译时检查类型安全,并避免运行时的类型转换异常。 - **迭代器**:迭代器(Iterator)是遍历集合的标准方式,提供了对集合元素的访问而不暴露底层数据结构。 ...
需要注意的是,实际应用中还需要添加异常处理和错误检查,以确保程序的健壮性。 总的来说,RXTX库是Java开发者进行串口通信的强大工具,尤其在嵌入式系统、自动化设备控制、物联网等领域有着广泛的应用。其丰富的...
- 非运行时异常(如`IOException`)是指编译时可以检查到的异常。 - Java编译器要求必须显式捕获或声明抛出非运行时异常,而对于运行时异常则不需要。 #### 三、高级主题 6. **Servlet生命周期与Servlet和CGI的...
在Java编程中,调用Oracle数据库的存储过程是常见的任务,尤其在处理复杂业务逻辑或数据操作时。本文将深入探讨如何使用Java与Oracle数据库进行交互,并调用存储过程。 首先,确保你已经在你的开发环境中安装了...
在Java开发中,文件上传和下载是常见的功能需求,尤其在网络应用中,如网页、桌面应用或移动应用。为了实现这些功能,开发者通常需要引入特定的库或jar包。在这个场景下,"文件上传下载需要的jar包"指的是用于处理...
将这些jar包导入到Java项目中,你可以利用MuJava进行代码质量检查,确保编码规范和避免常见错误;使用OpenJava的编译器和虚拟机来理解和实验Java语言特性;而JUnit则可以为你的项目提供强大的单元测试支持,保证代码...
《电影票管理系统——Java与MySQL的精彩碰撞》 在当今数字化时代,电影票管理系统已经成为电影院不可或缺的一部分,它能够高效地管理票务,提供便捷的在线预订服务。本项目名为“电影票管理系统”,采用Java编程...
它能检测出各种类型的问题,包括空指针异常、未初始化的变量、资源泄漏等,覆盖了从初级到高级的各种错误。FindBugs的3.3版本在此基础上进行了优化,提升了分析效率和准确性。 二、Eclipse插件安装与配置 1. 安装...
在Android开发中,Java Native Access (JNA) 是一个库,允许Java代码与本地平台的API和库进行交互,无需编写C代码或使用Java的JNI(Java Native Interface)。JNA提供了一种简单的方法来调用操作系统函数,使得...
2. **Activity**: 在Android中,Activity是用户界面的主要组件,负责与用户交互。我们的FizzBuzz游戏会包含一个Activity,展示游戏界面和结果。 3. **布局设计**: 使用XML文件来定义UI布局,如线性布局、相对布局或...
10. **错误处理与异常捕获**:编写健壮的代码,处理可能出现的错误情况,提供友好的错误提示。 通过分析这个租车项目的代码,学生可以深入学习到软件开发的全生命周期,包括需求分析、设计、编码、测试和维护等环节...
FizzBuzz是一个常见的编程面试题目,旨在检查开发者的基本编程技能和逻辑思维能力。在此游戏中,对于从1到一个特定数目的数字序列,当数字可以被3整除时输出“Fizz”,可以被5整除时输出“Buzz”,同时能被3和5整除...
8. **统一异常处理**:全局异常处理机制,确保系统在出现错误时能够给出友好的提示,提升用户体验。 9. **性能优化**:包括缓存机制、数据库连接池优化、异步任务处理等,提高了系统的整体性能。 10. **部署便捷**...
接下来,我们将详细解析这一项目的几个核心知识点,主要包括:JavaEE的基本概念、写字板程序的设计与实现、数据库SQL的应用以及项目开发过程中的常见问题及解决方案。 ### 一、JavaEE基础 #### 1.1 JavaEE概述 ...
此外,为了保证程序的稳定运行,还需要考虑到错误处理和异常处理机制,比如检查CSV文件的格式是否正确,读取文件时是否能正常打开,以及在抽奖过程中可能出现的各种异常情况。 总的来说,年会抽奖程序是一个结合了...