zoukankan      html  css  js  c++  java
  • java 运行时异常与非运行时异常理解

    参考:https://blog.csdn.net/lan12334321234/article/details/70049446

    所谓的异常就是阻止当前程序或方法继续执行的问题

    java异常分为两种:运行时异常(RuntimeException)非运行时异常(CheckedException)也叫检查式异常

    我们常见的5中运行时异常: 

    ClassCastException(类转换异常) 
    IndexOutOfBoundsException(数组越界) 
    NullPointerException(空指针) 
    ArrayStoreException(数据存储异常,操作数组时类型不一致) 
    还有IO操作的BufferOverflowException异常

    具体可以参见java的API:http://docs.oracle.com/javase/7/docs/api/ 

    2.非运行时异常就必须得捕获了,否则编译不过去,java编译器要求程序员必须对这种异常进行catch,Java认为Checked异常都是可以被处理(修复)的异常,所以Java程序必须显式处理Checked异常。 

    常见的非运行异常有io异常和sql异常。 

    IOException、FileNotFoundExcetion 和SQLException

    finally是异常处理工作的一部分,表示总是执行。一般finally写的代码语句就是流的关闭。也就是做了一项清理,工作清理工作对于我们来说是必不可少的,因为如果一些消耗资源的操作,比如IO,JDBC。如果我们用完以后没有及时正确的关闭,那后果会很严重,这意味着内存泄露。(有人说过,对于资源的及时正确的清理是程序员的基本素质之一) 

    另外不得不说异常处理中的throws和throw的区别了。

    1、throws出现在方法的声明中,表示该方法可能会抛出的异常,允许throws后面跟着多个异常类型 
    2、throw出现在方法体中,用于抛出异常。当方法在执行过程中遇到异常情况时,将异常信息封装为异常对象,然后throw。 

  • 相关阅读:
    CSS3中制作倒影box-reflect
    JS中==与===区别
    CSS3-Animation
    CSS3-transform
    CSS3-transition
    CSS盒模型-box-sizing
    css兼容处理-hack
    CSS3-rgba
    CSS3-文本-word-wrap,word-break,white-space
    CSS3-文本-text-shadow
  • 原文地址:https://www.cnblogs.com/yingyigongzi/p/9282551.html
Copyright © 2011-2022 走看看