第三篇java核心技术复习博客

文章介绍了Java中的异常处理机制,包括Exception类和Error类的区别,Error表示系统级错误,而Exception用于可被捕获和处理的异常。通过示例代码解释了try...catch和finally语句如何捕获和处理异常,以及throws关键字如何在方法声明中抛出异常,提示调用者进行异常处理。
摘要由CSDN通过智能技术生成

 本次的复习博客的内容主要是围绕着第九,十,十一章这三章的一个复习博客 复习内容从bilibili第七十二个视频至八十八个视频

第七十二个视频  异常(Exception)什么是异常

什么是异常?

比如程序运行时磁盘空间不足,网络连接中断,被装载的类不存在等等,针对这种情况,在java语言中,引入异常以异常类的形式对这些非正常情况进行封装,通过异常处理机制对程序运行时发生的各种问题进行处理

他先通过下面一个实例来表达异常的作用

代码

package 哔哩哔哩;
public class Example1 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int result =divide(16,2);//调用divide()方法
		System.out.println("x除以y等于:"+result);
	}
	//下面的方法实现了两个整数相除
	public static int divide(int x,int y) {
		int result =x/y;//让整数相除
		return result;
	}
}

代码图

运行结果图

如果将y的参数改为0的话 代码将会报错因为0不能作为除数 报错就是异常也就是本章我们主要学习的内容

代码如下

 异常中也是有着一个继承体系

如图Throwable类这个类是所有的错误异常的父类,

 通过图中可以看出 Throwable有两个直接子类Error和Exception,其中Error代表程序中的错误,Exception代表程序中产生的异常  

两个直接子类的详细讲解

1.Error类为错误类 他表示是java运行时产生的系统内部错误或者资源耗尽的错误,是一个仅靠修改程序本身是不能恢复执行的  只能重新改没有别的办法  如果出现了这个问题只能修改 改对了才能运行

2.Exception类称为异常类  这个异常类跟上面不一样的是上面的是出现问题了不能程序自己处理,只能程序员自己修改,异常类的不同点就是如果出现异常的话 程序会自己处理然后输出异常原因异常类的众多子类有一个特殊的RuntimeException类,该类以及子类用于运行时异常

方法声明功能描述
StringgetMessage()返回此throwable的详细消息字符串
voidprintStackTrace()将此throwable及其追踪输出至标准错误流
void printStackTrace(PrintStream s)将此thrpwable及其追踪输出到指定的输出流

第七十三个视频try...catch和finally

java提供了一种对异常进行处理的方式——异常捕获。异常捕获是通过使用try...catch语句 

try{
//程序代码块
}catch(ExceptionType(Exception其他子类)e){
//对ExceptionType的处理
}

其中在try代码块中编写可能发生异常的java语句catch代码块中编写针对异常进行处理的代码。当try代码,当程序中发生异常,系统会将这个异常信息封装成一个异常对象,并将这个对象传递给catch代码块,catch代码快需要一个参数指明它所能够接受异常类型,这个参数必是Exception类或他的子类   通过实例讲解以上内容

代码

package 哔哩哔哩;

public class Example2 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//下面代码定义了一个try...catch语句捕捉依次
		try {
		int result = divide(4,0);//调用divide方法
		System.out.println(result);
		}catch (Exception e) {//对异常进行处理
			System.out.println("捕捉的异常为:"+e.getMessage());
		}
		System.out.println("程序继续向下执行");
	}
	//下面的方法实现了两个整数相除
	public static int divide(int x,int y) {
		int result = x/y;//定义变量result记录两个数相处的结果
		return result ;
	}

}

代码图

 运行结果图

 第七十四个视频throws关键字

上一节中由于调用自己写的divide()方法,因此很清楚该方法可能会发生异常,试想一下,如果去调用一个别人写的方法时,是否能知道别人写的方法是否会有异常呢?这很难判断所以针对这种情况 ,java中允许在方法的后面使用throws关键字对外声明该方法有可能发生的异常,这样调用者再调用方法时,就明确的知道该方法有异常,并且必须在程序中对异常进行处理

throws关键字声明抛出异常的语句格式如下

修饰符 返回值类型 方法名 ([参数1,参数2....])throws   ExceptionType1[,ExceptionType2.....]

 throws关键字需要卸载方法声明的后面throws后面需要声明方法中发生异常的类型,通过将这种做法称为方法声明抛出一个异常

代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值