java异常总结:
异常就是程序运行时出现不正常运行情况
1.异常由来:
通过java的类的形式对现实事物中问题的描述,并封住成了对象
其实就是java对不正常情况描述后的对象体现
2.对于问题的划分有两种:一种是严重的问题,一种是非严重的问题
对于严重的,java通过Error类来描述
对于Error一般不编写针对性的代码对其进行处理
对于非严重的,java通过Exception类来描述
对于Exception可以使用针对性的处理方式进行处理
3.常见的异常有:数组角标越界异常,空指针异常……
4.无论Error或者Exception都有一些共性的内容。
比如:不正常情况的消息,引发原因等。
Throwable //父类
|--Error
|--Excption //两个子类(里面定义了很多问题(异常出现))
实例1:
1 class Demo 2 { 3 public int div(int x,int y) 4 { 5 return x/y; 6 } 7 } 8 9 10 class ExceptionDemo 11 { 12 public static void main(String args[]) 13 { 14 Demo d=new Demo(); 15 int x=d.div(4,0); //0作为除数 16 System.out.println("x="+x); 17 System.out.println("over"); 18 } 19 }
运行结果:
Exception in thread "main" java.lang.ArithmeticException: / by zero
at Demo.div(ExceptionDemo.java:5)
at ExceptionDemo.main(ExceptionDemo.java:15)
从上面的结果可以分析出,在第5和第15行都出现了异常,这是因为除法的机制,除数不能为0,这时候运行就抛出了异常。
实例2:
1 class Demo 2 { 3 public int div(int x,int y) 4 { 5 return x/y; 6 } 7 } 8 9 10 class ExceptionDemo 11 { 12 public static void main(String args[]) 13 { 14 /*Demo d=new Demo(); 15 int x=d.div(4,0); 16 System.out.println("x="+x); 17 System.out.println("over"); 18 */ 19 byte[] arr=new byte[1024*1024*1000]; 20 } 21 }
运行结果:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at ExceptionDemo.main(ExceptionDemo.java:19)
java.lang.OutOfMemoryError:代表内存溢出异常
原文:http://www.cnblogs.com/liangqiyuan/p/5576156.html