黑马程序员技术交流社区
标题:
异常
[打印本页]
作者:
刘彦宗
时间:
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