Java测试异常的抛出

版权声明:转载注明来源。Keep Learning and Coding. https://blog.csdn.net/a771581211/article/details/88647739

首先定义Person类用于测试:

//Person.java
package day08;

/**
 * 用来测试throw与throws
 * 
 * @author kaixu
 *
 */
public class Person {
	private int age;

	public int getAge() {
		return age;
	}
	/**
	 * 当一个方法中使用throw抛出一个异常时
	 * 就是要在方法上使用throws声明该类异常的抛出以通知调用者解决。
	 * 只有RuntimeException及其子类异常使用throw抛出时不强制要求
	 * 必须使用throws声明,其他异常都是强制要求的,否则编译无法通过。
	 * @param age
	 * @throws Exception
	 */
	
	public void setAge(int age)throws IllegalAgeException {
		if(age<0||age>100){
			throw new IllegalAgeException("年龄不合法。");
		}
		
		this.age = age;
	}
	
}

在此基础上设置ExceptionDemo4类测试异常的抛出过程:

package day08;
/**
 * 测试异常的抛出
 * @author kaixu
 *
 */
public class ExceptionDemo4 {

	public static void main(String[] args) {
		Person p = new Person();
		/*
		 * 当调用一个含有throws声明异常抛出的方法时,编译器要求必须处理该异常。
		 * 处理手段有两种:
		 * 1.使用try-catch捕获并处理。
		 * 2.在当前方法上继续使用throws声明该异常的抛出。
		 */
		try {
			p.setAge(20);
		} catch (IllegalAgeException e) {
			e.printStackTrace();
		}
		System.out.println("年龄为:"+p.getAge());
	}

}

猜你喜欢

转载自blog.csdn.net/a771581211/article/details/88647739