异常指异于常态,和正常情况不一样,有错误出现。阻止当前方法或作用域执行的问题,称之为异常。
  Java中所有的与异常有关的类都继承于Throwable类,Throwable类有两个儿子,一个是Error类,一个是Exception类。
  

  Error类异常包括有虚拟机错误,线程死锁等,Error异常出现,程序就彻底崩溃了。
  Exception异常的出现,说明程序存在问题,可能是编码、环境、用户操作输入等原因而导致异常,Exception有很多儿子,常见为RuntimeException(运行时异常),还有其他异常。RuntimeException为非检查异常,而其他异常为检查异常。
  

  引起RuntimeException异常的情况有很多,比如引用了一个空对象的属性火方法、数组访问越界、错误的类型转换、算术方面所引起的异常(如除0)等,以上四种情况分别对应于空指针异常(NullPointerException)、数组下标越界异常(ArrayIndexOutOfBoundsException)、类型转换异常(ClassCastException)和算术异常(ArithmeticException),当然还有其他很多种运行时异常,他们都是RuntimeException的子类,这里不逐一介绍了。
  运行时异常会由Java虚拟机自动抛出并自动捕获,而运行时异常的出现绝大部分情况下说名代码本身存在问题,应该从逻辑上改进代码
  

  检查异常,引起检查异常出现的原因可能是多种多样的奇葩原因,如文件异常(IOException)、SQL异常(SQLException)等,与RuntimeException不同,对于检查异常需要自己手动添加捕获以及处理语句

Java异常简介的更多相关文章

  1. Java异常(一) Java异常简介及其架构

    概要 本章对Java中的异常进行介绍.内容包括:Java异常简介Java异常框架 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3544168.html ...

  2. Java异常简介、异常捕获还是上抛总结

    概要 本章对Java中的异常进行介绍.内容包括:1.Java异常简介2.Java异常框架 一.Java异常简介 Java异常是Java提供的一种识别及响应错误的一致性机制. Java异常机制可以使程序 ...

  3. Java异常(一)Java异常简介及其框架

    Java异常(一)Java异常简介及其框架 概要 本章对Java中的异常进行介绍.内容包括:Java异常简介Java异常框架 Java异常简介 Java异常是Java提供的一种识别及响应错误的一致性机 ...

  4. 第11章 Java异常与异常处理

    1.Java异常简介 1.什么是异常异常出现的时候代码会无法正常运行下去,会产生各种问题2.捕捉异常的作用提早发现异常,方便查找问题,并给出解决方法3.Java中的异常1.Java中所有不正常的类都是 ...

  5. Java异常架构与异常关键字

    Java异常简介 Java异常是Java提供的一种识别及响应错误的一致性机制. Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程序健壮性.在有效使用异常的情况 ...

  6. Java 异常面试题(2020 最新版)

    Java异常架构与异常关键字 Java异常简介 Java异常是Java提供的一种识别及响应错误的一致性机制. Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程 ...

  7. 面试阿里,字节跳动90%会被问到的Java异常面试题集,史上最全系列!

    Java异常架构与异常关键字 Java异常简介 Java异常是Java提供的一种识别及响应错误的一致性机制. Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程 ...

  8. Java异常系列

    Java异常(一) Java异常简介及其架构 Java异常(二) <Effective Java>中关于异常处理的几条建议 Java异常(三) <Java Puzzles>中关 ...

  9. Java异常机制简介

    什么是异常? 异常一般是指程序在编译期没有问题,但是在程序运行期出现的错误,一个程序会因为出现异常而终止运行,也就是我们常说的挂掉,在多线程下,异常只会影响所在的线程,对其他线程没有影响. Java异 ...

随机推荐

  1. ASP.NET简单实现APP中用户个人头像上传和裁剪

    最近有个微信项目的用户个人中心模块中,客户要求用户头像不仅仅只是上传图片,还需要能对图片进行裁剪.考虑到flash在IOS和Android上的兼容性问题,于是想着能从js这块入手,在网上发现了devo ...

  2. Matlab_Graphics(1)_2D

    1.Add title ,axis Lables, and Legend to Graph: x=linspace(-*pi,2pi,); y1=sin(x); y2=cos(x); figure p ...

  3. 记录Js

    1.对于js,没有系统的学习.有要经常的用到,每次都是百度查找,为了以后能查询. (1). $(function () { $('.restbtn').on("click", fu ...

  4. 点击按钮跳出隐藏的div层,并设背景。

    style: .black_overlay{ display: none; position: absolute; top: 0%; left: 0%; width: 100%; height: 10 ...

  5. sql的列的说明

    <#@ template debug="true" hostspecific="true" language="C#" #> & ...

  6. hdu 1002

    ps:wa了好多次,然后才发现是输入的时候%s和%s要隔开一个空格,我想当然了... 代码: #include "stdio.h" #include "string.h& ...

  7. Three.js资源

    学习教程:http://www.hewebgl.com/ 例子:http://threejs.org/

  8. linux装JDK

    一.安装sun java升 级到ubuntu 11.10之后.ubuntu 默认自带的是openjdkjava.默认情况这个是能够使用的,但是如果你想搭建专业的开发环境,还是需要使用sun的靠谱.另外 ...

  9. HTTP请求方法

    HTTP请求方法 根据HTTP标准,HTTP请求可以使用多种请求方法. HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法. HTTP1.1新增了五种请求方法:OPTIONS, ...

  10. 黑马----JAVA字符串

    黑马程序员:Java培训.Android培训.iOS培训..Net培训 Stirng.StringBuffer和StringBuilder都实现了字符序列接口CharSequence,都是final类 ...