Java学习day25-异常处理

一、Java异常

1.任何一种程序设计语言设计的程序在运行时都有可能出现错误,例如除数为0,数组下标越界,要读写的文件不存在等等。

2.捕获错误最理想的是在编译期间,但有的错误只在运行时才会发生。对于这些错误,一般有两种解决办法:

  ①遇到错误就终止程序的运行

  ②由程序员在编写程序时,就考虑到错误的检测、错误消息的提示,以及错误的处理。

3.异常:在Java语言中,将程序执行中发生的不正常情况称为异常。

4.Java中的异常用于处理非正常情况,如文件没找到,网络错误,非法的参数

5.Java程序运行过程中所发生的异常事件可分为两类:

  ①Error:JVM系统内部错误、资源耗尽等严重情况。

  ②Exception:其他因编程错误或偶然的外在因素导致的一般性问题。(例如:空指针访问,试图读取不存在的文件,网络连接中断)

 

二、实例1,数组越界异常

package day16;

public class Test {
    public static void main(String[] args){
        String[] strs = new String[]{"a","b","c"};
        
        for(int i = 0; i < 4; i++){//strs只有0,1,2三个元素,没有第四个元素,这个时候输出strs[3]超出了数组长度,会报异常
            
            //java.lang.ArrayIndexOutOfBoundsException 数组越界
            System.out.println(strs[i]);
        }
    }
}

显示错误为:

实例2,空指针异常

package day16;

public class Test {
    public static void main(String[] args){
 //        A a = new A();
        A a = null;//引用变量a没有指向任何对象,指向的是null,什么都没有,自然也就没有i的值
        //java.lang.NullPointerException 空指针异常
        
        System.out.println(a.i);
    }
}

class A{
    int i;
}           

显示错误为:

实例3,错误运算异常

package day16;

public class Test {
    public static void main(String[] args){
                int i = 0;
        
        System.out.println(3/i);//被除数不能为0
    }
}    

显示错误为:

 

三、Java异常类层次

常见异常:

RuntimeException(运行时异常):错误的数据类型转换;数组下标越界;空指针访问;

IOExption(读写异常):从一个不存在的文件中读取数据;越过文件结尾继续读取EOFException;连接一个不存在的URL;

 

posted @ 2020-03-22 11:52  苏胖胖  阅读(151)  评论(0)    收藏  举报