java:Java入门第三季第四课:异常处理机制

时间:2022-09-28 20:04:03

复习笔记
①创建了一个Person zhang的空指针,没有new实例化,这个是空指针错误
②创建了一个int数组,并且创建赋值的时候超出了边界,这个是IndexOutOfBoundsException错误

③可以把错误的名字放到Eclipse中,然后按住Ctrl+T调出继承关系,看看这个错误是否是必须要处理的
RuntimeException可以处理,可以不处理
非runtime错误必须要处理

④要查看Exception包含runtimeException和非,可以把exception打到eclipse中,
但是一定要注意大小写,并且注意全称打进去,java.lang.Exception,不然显示不出来继承关系

一、代码笔记

package javastudy;

public class TestIt
{

public static void main(String[] args)
{
// String s="hello";
// try
// {
// int i=Integer.parseInt(s);
// } catch (Exception e)
// {
// e.printStackTrace();
// }
//
//// System.out.println(i);
// try
// {
// //动态加载类
// Class.forName("javastudy.TestIt");
// //Ctrl+t显示继承关系
// } catch (ClassNotFoundException e)
// {
// e.printStackTrace();
// }
// Throwable

//空指针错误
Person zhang;
zhang.age=20;

//IndexOutOfBoundsException
int[] x=new int[3];
x[0]=1;
x[1]=2;
x[2]=3;
x[4]=4;
//考试的试题列出一些常用的异常


}

}

二、课程大纲

2.什么是异常

程序运行中出现的,导致程序无法正常运行的错误,叫做异常

异常的父类Throwable

Ctrl + T 显示继承关系

Throwable 主要有两个子类

Error (一般是JVM运行中出现了问题,不用处理,也没法处理) JVM=Java Virtual Machine 虚拟机

Exception
子类分为两种,其中一种叫做RuntimeException(又有很多子类,也不用管),这种错误可以处理,也可以不处理。

另外一种叫做非RuntimeException(好几百种,不用管)

RuntimeException 可以try catch,也可以不try catch
非RuntimeException 必须的try catch

演示类的继承关系图。

RuntimeException

1.NullPointerException(空指针异常)

2.IndexOutOfBoundsException(数组下标越界异常) ArrayIndexOutOfBoundsException

3.NumberFormatException(数据格式异常)

4.ClassCastException(类型转换异常)

5.IllegalArgumentException(非法参数异常)

6.ArithmeticException(算术异常)

7.IllegalStateException(非法语句异常)

非RuntimeException

ClassNotFoundException(类找不到异常)