java 异常的使用 异常处理 throws throw Exception

16 篇文章 0 订阅
	关键词:java  异常类  异常处理   throws  throw Exception
  1. 如果一个类称为异常类,必须要继承异常体系(Exception,RuntimeException),因为只有异常体系的子类才具有可抛性

  2. 编译时检测异常:只要是Exception和其子类都在编译时检测,除了特殊子类RuntimeException

  3. 自定义异常时只能继承Exception或者 RuntimeException

  4. throws和thorw的区别
    (1)throw是在代码块内的,即在捕获方法内的异常并抛出时用的;

    (2)throws是针对方法的,即将方法的异常信息抛出去

    (3)可以理解为throw是主动(在方法内容里我们是主动捕获并throw的),而throws是被动(在方法上是没有捕获异常进行处理,直接throws的)

  5. 如果调用针对throws的方法,那调用方法需要使用try_catch,进行异常的处理

  6. try{
    //需要检测的代码
    }catch(异常类 变量){
    //处理异常的代码
    }

package demo;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import javax.swing.plaf.synth.SynthStyle;

public class Test {

	public static void main(String[] args)

	{

		try {
			throwChecked(5);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			System.out.println(e.getMessage());
		}
		throwRuntime(3);

	}

	public static void throwChecked(int a) throws Exception

	{

		if (a > 0)

		{
			// 自行抛出Exception异常,必须处于try块中,或带throws声明的方法中
			throw new Exception("a不合法");
		}

	}

	public static void throwRuntime(int a)

	{

		if (a > 0)

		{

			// 自行抛出Runtime异常,既可以显示捕获该异常,也可以不用理会该异常,交给方法调用者处理

			throw new RuntimeException("a1不合法");

		}

	}

}

class MyselfException extends RuntimeException {

	MyselfException() {
		// TODO Auto-generated constructor stub
	}

	MyselfException(String msg) {
		super(msg);
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值