zoukankan      html  css  js  c++  java
  • java异常处理预习

    一、什么是异常处理     

          在程序运行过程中发生的、会打断程序正常执行的事件称为异常(Exception),也称为例外。比如:除零溢出、数组越界、内存溢出等,这些事件的发生将阻止程序的正常运行。传统的编程语言没有异常处理机制,处理错误完全依靠程序编写者自己查找,通常是遇到错误返回一个特殊的值或者设定一个标志,并以此判断是否有错误产生,这就给程序维护带来了很大的障碍。而Java利用面向对象的方法,把异常处理固化到语言中,并把各种不同的异常分类,同时提供了良好的接口,由于Java语言中的异常处理和Java运行时的系统相关,所以它消耗内存和处理器来处理创建、抛出、捕获、处理异常等事件,如果不能合理使用就会适得其反,降低了软件的可读性和执行效率。

    二、 异常处理方法
          Java语言提供了3种处理异常的方法:一种方法是使用try-catch-finally 语句实现异常处理;另一种方法是使用throw语句在方法头或者方法体内抛出异常,异常处理代码捕获这些异常。Java语言还为用户提供了定义自己异常类的方法,来满足用户处理实际问题的需要。
    在使用try-catch-finally语句实现异常处理时,由于一个try子句可能产生多种不同的异常,这就需要多个catch子句来实现多异常处理机制,每一个catch子句接收和处理一个异常句柄,而针对多个catch子句,处理的原则是:
    1)在多catch子句中,处理的顺序是由距离产生异常最近的、可匹配的catch代码段来处理。所谓的匹配是指catch所处理的异常类型与所生成的生成类型完全一致或是它的父类。
    2)如果没有相应的异常处理,说明当前方法不能处理该异常,程序流程将会交给上层方法的try代码段进行处理,如果均不符合,则由Java虚拟机捕获并处理该异常。
    3)异常处理的查找依据类型(异常与参数属于相同的异常类、异常属于参数异常的子类)匹配原则按顺序进行。在使用throw语句抛出异常时,对于含有throw语句的方法,应该在方法头定义中增加语句: throws异常类名列表,这样做的目的,主要是提醒调用该方法的其他方法,要处理和接受该方法在运行过程中可能抛出的异常。
    Java 语言也提供了用户自定义异常类的方法来满足处理方面的需求,而所有用户自定义的异常类都必须是Throwable类或Exception类的子类。
    程序运行中有错误是可以预料的,但却是不可避免的。当程序出现错误时,要力争允许用户排除环境错误,继续运行程序,这就是异常处理的任务和准则。Java语言提供了异常处理的内部支持,需要广大用户通过日常的反复操作来体会其更深层次的内容。

  • 相关阅读:
    Java基础---多线程
    Java基础---多态、内部类、异常、包
    Java基础---继承、抽象、接口
    Java基础---面向对象
    NSOperation使用
    根据两个日期计算相差的年月日
    代理模式简单说明
    Lua程序设计入门
    zmq-ios framwork
    cocoapods安装与使用
  • 原文地址:https://www.cnblogs.com/shemai/p/5263334.html
Copyright © 2011-2022 走看看