java授查 非授查异常_java检查异常与非检查异常

Java的可检测异常和非检测异常泾渭分明。可检测异常经编译器验证,对于声明抛出异常的任何方法,编译器将强制执行处理或声明规则。

非检测异常不遵循处理或声明规则。在产生此类异常时,不一定非要采取任何适当操作,编译器不会检查是否已解决了这样一个异常。有两个主要类定义非检测异常:RuntimeException和Error。

为什么Error子类属于非检测异常?这是因为无法预知它们的产生时间。若Java应用程序内存不足,则随时可能出现OutOfMemoryError;起因一般不是应用程序中的特殊调用,而是JVM自身的问题。另外,Error类一般表示应用程序无法解决的严重问题,故将这些类视为非检测异常。

RuntimeException类也属于非检测异常,一个原因是普通JVM操作引发的运行时异常随时可能发生。与Error不同,此类异常一般由特定操作引发。但这些操作在Java应用程序中会频繁出现。例如,若每次使用对象时,都必须编写异常处理代码来检查null引用,则整个应用程序很快将变成一个庞大的try-catch块。因此,运行时异常不受编译器检查与处理或声明规则的限制。

将RuntimeException类作为未检测异常还有一个原因:它们表示的问题不一定作为异常处理。可以在try-catch结构中处理NullPointerException,但若在使用引用前测试空值,则更简单,更经济。同样,可以在除法运算时检查0值,而不使用ArithmeticException。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/563804.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java not a jpeg file_javax.imageio.IIOException: Not a JPEG file: starts with 0x47 0x49

java处理图片时出现异常javax.imageio.IIOException: Not a JPEG file: starts with 0x47 0x49at com.sun.imageio.plugins.jpeg.JPEGImageReader.readImageHeader(Native Method)at com.sun.imageio.plugins.jpeg.JPEGImageReader.readNativeHeader(Unknown Source)at com.sun…

java if用法_java中if语句的写法

if语句if 语句的语法如下:if(布尔表达式){//如果布尔表达式为true将执行的语句}如果布尔表达式的值为 true,则执行 if 语句中的代码块,否则执行 if 语句块后面的代码。免费视频教程推荐:java视频教程if...else语句if 语句后面可以…

java子类和父类实例_java中父类与子类之间的转换示例

java中父类与子类之间的转换示例有以下三点:示例一父类强制转子类pre class"brush:php;toolbar:false">Father f new Son();Son s (Son)f;//可以创建一个父类的实例,想要强制把父类对象转换成子类的,不行!通俗的想…

java 二进制 定义_在Java中,我可以用二进制格式定义一个整数常量吗?

所以,随着Java SE 7的发布,二进制符号标准开箱即用。语法是非常直接和明显的,如果你有一个良好的理解二进制:byte fourTimesThree 0b1100;byte data 0b0000110011;short number 0b111111111111111;int overflow 0b10101010101…

java 原子类能做什么_死磕 java原子类之终结篇(面试题)

概览原子操作是指不会被线程调度机制打断的操作,这种操作一旦开始,就一直运行到结束,中间不会有任何线程上下文切换。原子操作可以是一个步骤,也可以是多个操作步骤,但是其顺序不可以被打乱,也不可以被切割…

java二重循环计数_java的二重循环代码样例

1.计算三个班的平均分import java.util.Scanner;public class AvgScore{public static void main (Sting[] args){int[] score new int[]; //成绩数组int classNum 3; //班级数量double sun 0.0; //成绩总和double[] average new double[classNum];//平均成绩…

java语言sql接口_Java语言SQL接口

Java语言SQL接口编辑锁定讨论上传视频《Java语言SQL接口》是1997年清华大学出版社出版的图书,作者是孙元等。本书覆盖了JDBC的各个方面,适合于有一定的Java语言编程基础和数据库及SQL语言基础的开发人员使用。作 者孙元 / …

java对docker_如何在docker中运行java程序

吃鸡游戏创建一个redis docker容器首先,我们先为redis创建一个DockerfileFROM ubuntu:12.10RUN apt-get updateRUN apt-get -y install redis-serverEXPOSE 6379ENTRYPOINT ["/usr/bin/redis-server"]现在你需要通过Dockerfile创建一个镜像,将…

java 文件树形_java 显示树形文件结构,类似windows的tree命令

本来是个练习题,自己做了做,还行。但是看到别人的代码比我的更好。所以,这里就贴出了别人的代码。我的就只有让它沉睡吧……。是别人的,算是转载吧。转自:他的电脑。主要思想,递归调用。import java.io.Fil…

hdfs的实验总结_实验2-熟悉常用的HDFS操作.doc

本文档下载自 文库下载网,/doc/d52aebffbb0d4a7302768e9951e79b896802689c.html实验2-熟悉常用的HDFS操作实验2熟悉常用的HDFS操作1实验目的1. 理解HDFS在Hadoop体系结构中的角色;2. 熟练使用HDFS操作常用的Shell命令;3. 熟悉HDFS操作常用的J…

java canvas 画图片_canvas画布——画八卦图

浏览器支持Internet Explorer 9、Firefox、Opera、Chrome 以及 Safari 支持 arc() 方法。注释:Internet Explorer 8 或更早的浏览器不支持 元素。定义和用法arc() 方法创建弧/曲线(用于创建圆或部分圆)。提示:如需通过 arc() 来创建圆,请把起…

计算两个数的乘积java编写_Java模拟计算机的整数乘积计算功能示例

本文实例讲述了Java模拟计算机的整数乘积计算功能。分享给大家供大家参考,具体如下:计算机计算整数乘积的原理:实现代码:package math;public class two {/*** Fundamental method* f(n) O(n^2)* param a* param b* return*/publ…

java使用linux常用命令_linux常用Java程序员使用命令(一)

pwd 显示当前路径cd切换目录 . .. ~ls显示文件(夹)-l 显示详细信息-a显示全部,包括隐藏文件(夹)mkdir创建文件夹-p递归创建touch创建空白文件echocat、tac、more、tail 查看文本内容rmdir删除空白文件夹rm-f 强制删除-r递归删除cp复制/新建文件mv移动/重命名find查找…

java中start与loop_java for-loop问题

我正在制作一个Java程序来计算Simpson的积分规则.这是我的代码.注意count 4,9,10,11的输出值中的第二列数字.它们不是我需要的数字,它们不遵循这种模式.我需要这些数字是准确的.发生了什么,我该如何解决?public static void main(String[] args){double totalS 0.…

java查询数据库的方式_Java连接各种数据库方式速查表

1、Oracle8/8i/9i数据库(thin模式)Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();String url"jdbc:oracle:thin:localhost:1521:orcl"; //orcl为数据库的SIDString user"test";String password"test";Connection c…

java多线程编程—高级主题_Java day20 高级编程【第一章】Java多线程编程

【第一章】Java多线程编程一.进程与线程多个时间段会有多个程序依次执行,但是同一时间点只有一个进程执行线程是在进程基础之上划分的更小的程序单元 ,线程是在进程基础上创建并且使用的,所以线程依赖于进程的支持,但是来讲&#…

java object数组转实体类_详解Java中String JSONObject JSONArray List实体类转换

JSON使用阿里的fastJson为依赖包gradle依赖管理如下:compile group: "com.alibaba", name: "fastjson", version:"1.2.41"1、String转JSONObject前言:String 是JSONObject格式的字符串eg:JSONObject jSONObject JSONObje…

mysql中不要 秒的函数_Mysql中日期和时间函数应用不用求人 | 很文博客

对于每个类型拥有的值范围以及并且指定日期何时间值的有效格式的描述见7.3.6 日期和时间类型。这里是一个使用日期函数的例子。下面的查询选择了所有记录,其date_col的值是在最后30天以内:mysql> SELECT something FROM tableWHERE TO_DAYS(NOW()) - …

java实现log4j_log4j在java中实现

public class AccLogBase {/**致命错误. */public static final int LOG_LEVEL_FATAL 1;/** 错误. */public static final int LOG_LEVEL_ERROR 2;/** 警告. */public static final int LOG_LEVEL_WARN 3;/**信息. */public static final int LOG_LEVEL_INFO 4;/** debug. …

e x泰勒 java_maven project

最近没事了玩一下maven,使用maven管理工程中的依赖包非常的方便。建立maven web工程的时候开始不知道怎么用tomcat来调试,总是使用mave的tomcat插件发布了后来调试,觉得非常的麻烦,网上找了点材料,看看maven web工程不…