首页 > 编程知识 正文

java常见的runtime exception,java中timeoutexception不是runtime

时间:2023-05-03 17:23:08 阅读:202846 作者:616

这是java的默认配置。
tmdhs把一个异常定义在方法的throws定义中,你就可以不处理这个异常,系统会自动把该异常抛出。 而RuntimeException则是java设计中所有方法都默认定义在throws中了,所以只要你不捕获,就会一层一层的往上抛出。
除非你显示的标准要捕获它。否则不会被捕获。也不会造成编译异常。
其实大部分的RuntimeException,要么是系统异常。无法处理。例如网络问题。
要么就是应该在UT中发现的,例如空指针异常。

中文名:空指针异常。 java.lang.NullPointerException,是Java语言中的一个异常类。其位于java.lang包中,由于它的直接父类是java.lang.RuntimeException,所以该异常在源程序中可以不进行捕获和处理。 当应用程序试图在需要对象的地方使用 null 时,抛出该异常。这种情况包括: 调用 null 对象的实例方法。 访问或修改 null 对象的字段。 如果一个数组为null,试图用属性length获得其长度时。 如果一个数组为null,试图访问或修改其中某个元素时。 在需要抛出一个异常对象,而该对象为 null 时。 应用程序将会抛出NullPointerException类的实例,表明其他对 null 对象的非法使用。 以下给出上面5种情况的示例程序。 (1)调用 null 对象的实例方法。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 class Point {     public int x, y;     public int getX() {          return x;     } }   public class TestNullPointerException {     static Point p1;           public static void main(String args[]){                   p1.getX(); // 此处抛出NullPointerException                  } } (2)访问或修改 null 对象的字段。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 class Point {     public int x, y;     public int getX() {          return x;     } }   public class TestNullPointerException {     static Point p1;           public static void main(String args[]){                   p1.x = 1; // 此处抛出NullPointerException                  } } (3)如果一个数组为null,试图用属性length获得其长度时。 1 2 3 4 5 6 7 8 9 10 public class TestNullPointerException {           static int[] ia;           public static void main(String args[]){                  System.out.println(ia.length);    // 此处抛出NullPointerException               } } (4)如果一个数组为null,试图访问或修改其中某个元素时。 1 2 3 4 5 6 7 8 public class TestNullPointerException {           static int[] ia;           public static void main(String args[]){                ia[0] = 1;    // 此处抛出NullPointerException            } } (5)在需要抛出一个异常对象,而该对象为 null 时。 1 2 3 4 5 6 7 8 9 10 11 class MyException extends RuntimeException { }   public class TestNullPointerException {           static MyException e;           public static void main(String args[]){                        throw e; // 此处抛出NullPointerException     }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。