zoukankan      html  css  js  c++  java
  • 异常(Exception)

    异常

    Java运行过程中发生的异常可以分为两类:

      1.错误(Error):JVM系统内部错误,资源耗费等严重情况

      2.异常(Exception):其他因编程错误或偶然的外在因素导致的一般性问题

    1. 可以对下列情形在方法定义中抛出异常

              (1)    方法中调用了一个会抛出“已检查异常”的方法

              (2)    程序运行过程中发生了错误,并且用throw子句抛出一个”已检查异常”

                          

    a.对负数开平方根

    b.空指针访问

    c.试图读取不存在文件

    d.网络连接中断

    e.分母为0

    PS:不要抛出:从Error派生的那些异常

    JAVA异常处理机制

    1. JAVA程序的执行过程中如出现异常,会自动生成一个异常类对象,该异常对象将被提交给JAVA运行时系统,这个过程称为抛出(throw)异常----主动
    2. 当JAVA运行时系统接收到异常对象时,会寻找能处理这一异常的代码并把当前异常对象交给其处理,这一过程称为捕获(catch)异常----被动
    3. 如果JAVA运行时系统找不到可以捕获异常的方法,则运行时系统将终止,相应的JAVA程序也将退出
    4. 程序员通常只能处理Exception,而对错误Error无能为力

    常见异常:

    1. RuntimeException
      1. ArithmeticException:数学计算异常
      2. NullPointerException:空指针异常
      3. NegativeArraySizeException:负数组长度异常
      4. ArrayIndexOutOfBoundsException:数组索引越界异常
      5. ClassNotFoundException:类文件未找到异常
      6. ClassCastException:造型异常
    2. IOException
      1. FileNotFoundException:文件未找到异常
      2. EOFException:读写文件尾异常
      3. MalformedURLException:URL格式错误异常
      4. SocketException:Socket异常(套接字)
        1. 算数异常类:ArithmeticException
        2. 空指针异常类:NullpointerException
        3. 类型强制转换异常:ClassCastException
        4. 数组负下标异常:NegativeArrayException
        5. 数组下标越界异常:ArrayIndexOutOfBoundsException
        6. 违背安全原则异常:Secturity Exception
        7. 文件已结束异常:EOFException
        8. 文件未找到异常:FileNotFoundException
        9. 字符串转换为数字异常:NumberFormatException
        10. 操作数据库异常:SQLException
        11. 输入输出异常:IOException
        12. 方法未找到异常:NotSuchMethodException
        13. 抽象方法错误异常java.lang.AbstractMethodError
        14. 断言错误异常java.lang.AssertionError
        15. 类循环依赖错误异常java.lang.ClassCircularityError
        16. PS:当一个异常没有在当前的try-catch中处理的话将会抛给调用它的方法(throws)
        17. PS:当一个异常一直没有能够被处理最后又回到主方法的时候,程序将会停止运行
        18. 如果程序需要catch块中访问异常对象的相关信息,可以通过调用catch后异常形参的方法来获得。当JAVA运行时决定调用某个catch块来处理异常对象时,会将该异常对象赋给该catch块后的异常参数,程序就可以通过该参数获得异常的相关信息啦

          getMessage():返回该异常的详细描述字符串

          printStackTrace():将 该异常的错误栈信息输出屏幕上

          printStackTrace(PrintStream s):将该异常的跟踪栈信息输出到指定的输出流

          getStackReace():返回该异常的跟踪栈信息

    你若盛开,清风自来...
  • 相关阅读:
    屏蔽右键
    无法解析类型 java.lang.Object。从必需的 .class 文件间接引用了它
    屏蔽右键
    Servlet的三个基本方法
    应用HttpClient来对付各种顽固的WEB服务器 摘抄
    Apache xmlrpc
    利用缓存机制快速读取XML文件数据
    JDBC连接MySQL
    HttpClient入门
    5款主流NoSQL数据库全方位横评
  • 原文地址:https://www.cnblogs.com/shangjindexiaoqingnian/p/6307472.html
Copyright © 2011-2022 走看看