黑马程序员技术交流社区

标题: 异常 [打印本页]

作者: 刘彦宗    时间: 2015-10-23 11:19
标题: 异常
将程序执行中发生的不正常情况称为“异常”。
异常由来:问题也是现实生活中一个具体的事物,也可以通过java的类的形式进行描述。
          并封装成对象。其实就是java对不正常情况进行描述后的对象体现。
分类:捕获错误最理想的是在编译期间,但有的错误只有在运行时才会发生。
      编译时异常和运行时异常
      运行时异常:Java程序在执行过程中所发生的异常事件可分为两类
常见异常:
ClassCastException:类型转化异常
                        public void test(){
                                Object obj = new Date();
                                String str = (String)obj;
                                System.out.println(str);
                        }
        ArrayIndexOutOfBoundsException:数组下标越界异常
                        public void test(){
                                byte[] b = new byte[]{1,2,4,5,6};
                                for(int i = 0;i <= b.length;i++){
                                System.out.println(b[i]);
                                }
                        }                                                               
       
        NullPointerException:空指针异常
                        public void test(){
                                String str = new String("**");
                                str = null;
                                System.out.println(str.length());
                        }                                                               
        ArithmeticException/by zero:算术异常
                        public void test(){
                                int i = 20;
                                int j = i/0;
                                System.out.println(j);
                        }
作者: 刘彦宗    时间: 2015-10-23 11:23
前面使用的异常都是RuntimeException类或是它的子类,这些类的异常的特点是:
        即使没有使用try和catch捕获,Java自己也能捕获,
        并且编译通过 ( 但运行时会发生异常使得程序运行终止 )。
java.io.IOExeption:如果抛出的异常是IOException等类型的异常,则必须捕获,否则编译错误。
作者: 罗志辉    时间: 2015-10-23 11:46
学习学习了啊
作者: LLLLL    时间: 2015-10-23 12:59
666666666666
作者: yuanjun52306    时间: 2015-10-23 15:15
我只想问666666666666是啥意思??




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2