美文网首页
2021-01-03【Java基础题】

2021-01-03【Java基础题】

作者: 你家门口的两朵云 | 来源:发表于2021-01-03 22:52 被阅读0次

    1.运行时异常与一般异常有何异同

    分析答题过程:  
      (1)先要知道什么是程序异常?
      (2)什么是运行时异常,
      (3)什么是一般异常
    
    答:
    异常表示程序运行过程中可能出现的非正常状态。
    
    运行时异常(Runtime Exception)表示虚拟机的通常操作中可能遇到的异常,是一种常见的运行错误。
    1.运行时异常,我们可以不处理。
    2.当出现运行时异常,总是由虚拟机接管。
    3.假如出现RuntimeException,那么一定是程序员的错误。
    4.出现运行时异常后,系统会把异常一直往上层抛,一直遇到处理代码。
    5.如果没有处理块,到最上层,如果是多线程就由Thread.run()抛出,如果是单线程就被main()抛出。
    6.抛出之后,如果是线程,这个线程也就退出了。
    7.如果是主程序抛出的异常,那么这整个程序也就退出了。
    8.运行时异常是Exception的子类,也有一般异常的特点,是可以被Catch块处理的。
    9.出现运行时异常之后,要么是线程中止,要么是主程序终止。
    10.常见的RE有:空指针,类转换异常,越界异常,非法参数异常,数组存储异常,算术异常,缓冲区溢出异常etc.
    
    一般异常或者时检查时异常(Checked Exception)一般是外部错误,并不是程序本身的错误,而是在应用环境中出现的外部错误.
    1.JAVA编译器强制要求我们必需对出现的这些异常进行catch。
    2.IO异常,以及SQL异常,类找不到异常,文件找不到异常等。
    
    区别:
    运行时异常是程序员写的代码存在错误,一般异常是jvm本身的运行环境导致的外部错误,一般不是程序员的代码错误。
    

    2.error和exception有什么区别?

    答:
    Throwable是所有Java程序中错误处理的父类,有两种资类:Error和 Exception。
    
    Error:
    1.表示由JVM所侦测到的无法预期的错误,由于这是属于JVM层次的严重错误,导致JVM无法继续执行。
    2.error是不可捕捉到的,无法采取任何恢复的操作
    3.一般是由虚拟机抛出
    
    Exception:
    1.表示可恢复的例外,这是可捕捉到的。
    

    3.异常处理的简单原理和应用

    1.当java程序违反了java的语义规则时,java虚拟机就会将发生的错误表示为一个异常。
    2.一种是java类库内置的语义检查。
    3.另一种是java允许程序员扩展这种语义检查,
    程序员可以创建自己的异常,并自由选择在何时用throw关键字引发异常。
    4.所有的异常都是java.lang.Thowable的子类。
    

    4.写出你最常见到的6个Runtime Exception

    都是java.lang.*下的异常
    1.NullPointerException 空指针异常
    2.ClassCastException 类型转换异常
    3.IndexOutOfBoundsException  越界异常
    4.IllegalArgumentException  非法参数异常
    5.ArrayStoreException  数组存储异常
    6.ArithmeticException  算术异常
    7.BufferOverflowException  缓冲区溢出异常
    

    2021年1月3日,湖北黄冈,微风

    相关文章

      网友评论

          本文标题:2021-01-03【Java基础题】

          本文链接:https://www.haomeiwen.com/subject/boupoktx.html