java异常机制的理解

1.异常?

异常情况是指程序在运行时,可能由于外部系统的条件的改变而导致程序可能出错的情况。

 

2.异常的分类。

异常(Throwable):①错误:Error

      ②异常:<1>运行异常 <2>强制检测异常

 

3.一般解决异常的两种方法

 

①try…catch机制:

 

 try {
		boolean b4 = file.createNewFile();
		System.out.println("是否创建:" + b4);
	} catch (Exception ef) {
		ef.printStackTrace();
	}

 

②throws Exception(抛出异常):

一级一级把异常往上抛出,方法抛给主函数,主函数抛给虚拟机……

故需要一级级往上写:throws Exception

 

public static void main(String args[]) throws Exception {

		String path = "D:\\hu.txt";
		String path1 = "D:\\复件_hu.txt";

		FileTest ft = new FileTest();

		// 读取数据
		String str = "恭喜你!!!文件写入成功。";
		
		ft.writeFile(path1, str);

	}

	public void writeFile(String path, String content) throws Exception {

		// 创建一个文件输出流
		java.io.FileOutputStream fo = new java.io.FileOutputStream(path);

		// 将字符串转成字节数组
		byte[] ba = content.getBytes();
		// 遍历数组,取出字节,写到流中
		for (int i = 0; i < ba.length; i++) {
			// 写出字节
			fo.write(ba[i]);

		}

		// 强制输出
		fo.flush();
		// 关闭流
		fo.close();

	}
 

 

 

4.网上的一些资料

在java代码中如果发生异常,jvm(java虚拟机)会抛出异常对象,导致程序代码中断,这个时候jvm在做的操作就是:创建异常对象,然后抛出,比如:

1.int i= 1;

2.int j = 0;

3.int res = 0;

4.res = i/j;//除0错误

5.System.out.println(res);

这5句代码运行到第四句会中断,因为jvm抛出了异常 2.throw的作用:手动抛出异常。有时候有些错误在jvm看来不是错误,比如:

1. int age = 0;

2. age = -100; 3.

System.out.println(age);

很正常的整形变量赋值,但是在我们眼中看来就不正常,谁的年龄会是负的呢?!所以我们需要自己手动引发异常,这就是throw的作用

int age = 0;

age = -100;

if(age<0)

{ Exception e = new Exception(); //创建异常对象 throw e; //抛出异常 }

System.out.println(age);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值