zoukankan      html  css  js  c++  java
  • java 常用异常及作用

    先看看图, Exception就明白了

      

      关于异常 大体分为 不可查异常 可查异常 runtimeException三类~异常都继承throwable这个类~ 下面有error和Exception两大类~

    不可查异常 为 error : 是由于系统错误`是无法恢复的`比如~你没显卡`怎么显示图像!是无法恢复的

    ~Exception 下为 可查异常和runtimeException两大类~可查异常是由于环境造成`是捕获处理的重点` 可以恢复的`

    runtimeException~是由于你程序设计的有漏洞`比如 1/0~的情况~ 正确设计不会出现的` 一般不捕获或处理~

    main()方法throws出   异常  会由jvm 虚拟机处理~   其实就是jvm终止你线程~

    1.   ArithmeticException - 算术运算中,被0除或模除。

    2、ArrayIndexOutOfBoundsException - 数组越界访问。

    3、ArrayStoreException - 数据存储异常,写数组操作时,对象或数据类型不兼容。

    4、ClassCastException - 类型转换异常。

    5、IllegalArgumentException - 方法的参数错误 无效。

    6、IllegalThreadStateException - 试图非法改变线程状态,比方说试图启动一已经运行的线程。

    7、NullPointerException - 试图访问一空对象的变量、方法或空数组的元素("程序遇上了空指针",因为调用了未经初始化的对象或者是不存在)

    8、NumberFormatException - 数据格式异常,试图把一字符串非法转换成数值(或相反)。

    9、SecurityException - 如果Applet试图执行一被WWW浏览器安全设置所禁止的操作。

    10、IncompatibleClassChangeException - 如改变了某一类定义,却没有重新编译其他引用了这个类的对象。如某一成员变量的声明被从静态改变为非静态,但其他引用了这个变量的类却没有重新编译,或者相反。

    11、OutOfMemoryException - 内存不足,通常发生于创建对象之时。

    12、NoClassDefFoundException - JAVA运行时系统找不到所引用的类。

    13、IncompatibleTypeException - 试图实例化一个接口,Java运行时系统将抛出这个异常。

    14、UnsatisfiedLinkException - 如果所需调用的方法是C函数,但Java运行时系统却无法连接这个函数。

    15、InternalException - 系统内部故障所导致的异常情况,可能是因为Java运行时系统本身的原因。如果发现一可重现的InternalException,可以直接给Sun公司发电邮java@java.Sun.com。

    16.   java.lang.classnotfoundexception 解释是"指定的类不存在",这里主要考虑一下类的名称和路径是否正确即可。

    17.  

     

    Exception分为两类:运行期异常  和 非运行期异常


    java编译器要求方法必须声明抛出可能发生的运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。

    A:NullPointerException:对象的值是null
    举例:调用Person类的show方法
    Person p = null;
    p.show();


    B:ClassCastException:类型转换异常
    举例:在多态中常见
    Animal a = new Dog();
    Cat c = (Cat)a;


    C:NoSuchElementException:没有这个元素异常
    举例:在迭代器中,已经访问到元素的末尾了,你还在继续访问。
    Iterator it = array.iterator(); //只有两个元素
    System.out.println(it.next());
    System.out.println(it.next());
    System.out.println(it.next()); //NoSuchElementException


    D:IndexOutOfBoundsException:
    举例:指示某排序索引(例如对数组、字符串或向量的排序)超出范围时抛出。

     

    E:ArrayIndexOutOfBoundsException:数组索引越界异常

    举例:访问数组时,索引越界
    int[] arr = {1,2,3};
    System.out.println(arr[3]);


    F:NumberFormatException:数据格式化异常
    举例:把一个非数字字符串转换成数字类型
    int num = Integer.parseInt("abc");


    G:ClassNotFoundException:找不到类的异常
    举例:路径不对的时候。


    H:FileNotFoundException:找不到文件异常
    举例:在读取文件的时候,文件不存在。
    FileReader fr = new FileReader("fr.txt");


    I:ConcurrentModificationException:并发修改异常
    举例:在使用迭代器迭代数据的过程中,你又使用集合对象去操作元素。

  • 相关阅读:
    安全探讨之用Win32汇编写双进程守护
    LightTPD 1.4.12
    mysql4存在mysql5没有的性能成绩
    gcolor2-拾色器
    solaris 中挂载usb移动硬盘
    Browsershots:测试你的 Web 企图
    MythTV 0.20
    XorgEdit:xorg.conf 编纂器
    pci168c,1c无线网卡如何在64位Solaris系统上运用
    Fedora8中批改磁盘卷标
  • 原文地址:https://www.cnblogs.com/andy-lehhaxm/p/9435245.html
Copyright © 2011-2022 走看看