二维数组和异常

回顾

1.数组的初始化方式
2.数组的使用(元素访问,元素修改,遍历)
3.数组的应用(排序和查找)
4.选择排序、冒泡排序、顺序查找和二分法查找的算法以及代码实现
5.Arrays工具类中的常用方法
6.可变参数使用过程中的注意事项

内容

 

目标

 

第一节 二维数组

1.1 二维数组的概念
本质上还是一个一维数组,只是其数组元素又是一个一维数组
	
	举例说明:变量,一维数组,二维数组之间的关系
	吸烟:
	没钱 	 	1根		 一个变量
	稍微有钱	一包		 	 一维数组【20根】	
	有钱		一条		 二维数组【10包】
1.2 二维数组的定义
	方式一:元素类型[][] 数组名称;

	方式二:元素类型 数组名称[][];
	推荐使用方式一
1.3 数组的初始化
	静态初始化:

	语法:元素类型[][] 数组名称 = new 元素类型[][]{一维数组1,一维数组2,一维数组3....};
	简化:元素类型[][] 数组名称 =m{一维数组1,一维数组2,一维数组3....};

	举例:int[][] arr = new int[][]{{2,3},{5,2,1},{10,45,22,54}};
	      int[][] arr = {{2,3},{5,2,1},{10,45,22,54}};

	动态初始化:

	语法:元素类型[][] 数组名称 = new 元素类型[二维数组的长度][一维数组的长度]
	举例:int[][] arr = new int[3][4];
	说明:定义一个数组arr,二维数组中一维数组的个数为3个,每个一维数组中元素的个数为4个
1.4 二维数组的访问

通过下标访问指定元素

 

遍历数组

 
1.5 内存中的二维数组

画图分析:

内存中的二维数组

第二节 异常

2.1 异常的概念
在程序执行过程中由于设计或设备原因导致的程序中断的异常现象叫做异常
2.2 异常的分类

运行时异常

运行时异常:(RuntimeException)在编译过程不会发现(没有语法错误),但是在执行程序程中,由于重大的逻辑错误导致的程序中断

常见的运行时异常

 

非运行时异常

非运行时异常:编译异常或检查异常,在程序设计过程中,编译时就会被发现,但是执行时可能发生也可能不发生的异常,为了程序不报错可以执行,那么这一类异常必须进行相应的处理
2.3 异常的处理方式

抛出异常:throws和throw

1.throw关键字:抛出异常

​ 语法:

 

2.throws关键字:上抛异常

​ 上抛异常,将异常抛到方法的签名后,表示提示方法的调用者此方法具有异常没有处理,你若想使用我,需要对此异常进行处理。

​ 语法:

 

捕获异常:try..catch..finally语句

 
 
 

3.使用try-catch结构捕获异常时的注意事项:

 
2.4 自定义异常类
1.过程:自定义非运行时异常

	i.定义一个类,继承Exception类

    ii.在此类中定义构造方法,调用父类中的带字符串参数的构造方法(此字符串表示对异常的描述)

	iii.使用异常
 
2.自定义运行时异常:

	i.定义一个类,继承RuntimeException类
	ii.在此类中定义构造方法,调用父类中的带字符串参数的构造方法(此字符串表示对异常的描述)
	iii.使用异常
 

课前默写

 

作业

 

面试题