zoukankan      html  css  js  c++  java
  • JAVA异常处理分析(中)

      在使用java异常处理机制时候我们会发现有些异常抛出后可以不需要进行抓取处理,而有些异常必须要进行抓取处理,这是个什么情况呢?

    设计理念猜想:

         有一些场景的异常,是可以不需要处理或是经常不会去使用备选方案的,比如Error大多用于程序错误直接终止程序运行,那么你的备选方案根本无用,在比如RuntimeException 这些异常都是由于程序在运行时候出现的程序错误可以说就是传说中的bug,是通过修改程序后可以避免的。那么也不需要进行抓取处理选择备选方案。

    所以:

        对于Error 类以及子类和RuntimeException以及子类是可以不用抛出异常,而且抛出异常也可以不被强制进行抓取处理的。但这并不代表这些异常不能被抓取处理,同样它仍然可以被抓取处理。

    public class Test {
    
      public static void testException(){
        throw new RuntimeException("exception");
      }
    
      public static void main(String[] args) {
    
        
          testException();
    
      }

    而:

        对于Exception类或Throwable类以及自定义的子类抛出去是要强制进行异常的处理的。具体表现如下:

    public class Test {
    
      public static void testException() throws Exception {
        throw new Exception("exception");
      }
    
      public static void main(String[] args) {
    
        try {
          testException();
        }catch (Exception e){
          e.printStackTrace();
        }
    
      }
    }

      

  • 相关阅读:
    android调用google地图
    AndroidManifest.xml中android:configChanges的简介
    android消息推送机制
    用j4lChartAndroid实现3D图饼
    读《重构改善既有代码的设计》笔记一
    怎样删除data下的多余文件
    Mac OSX 10.8 下 配置 mysql+python+thrift开发环境
    新的征程
    练习1 四则运算的程序
    作业二四则运算
  • 原文地址:https://www.cnblogs.com/maybo/p/7544353.html
Copyright © 2011-2022 走看看