Java自定义异常

题目描述:

自定义一个异常类NoThisSoundException和Player类,在Player的play()方法中使用自定义异常,要求如下:

  1. NoThisSoundException继承Exception类,类中有一个无参和一个接收一个String类型参数的构造方法,构造方法中都使用super关键字调用父类的构造方法。
  2. Player类中定义一个play(int index)方法,方法接收一个int类型的参数,表示播放歌曲的索引,当index>10时,play()方法用throw关键字抛出NoThisSoundException异常,创建异常对象时,调用有参的构造方法,传入“您播放的歌曲不存在”。
  3. 在测试类中创建Player对象,并调用play()方法测试自定义的NoThisSoundException异常,使用try...catch语句捕获异常,调用NoThisSoundException的getMessage()方法打印出异常信息。
package Exception_test;

public class Exception_test {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Player a=new Player();
		//try...catch语句用于捕获异常
		try{
			a.play(9);
		}catch(Exception e){
			System.out.println(e.getMessage());
		}

	}

}
class Player {
	//使用throws关键字抛出自定义异常
	void play(int index) throws Exception{
		if(index>10)
			//使用throw关键字声明异常对象
			throw new NoThisSoundException("你播放的歌曲不存在...");
		else
			System.out.println("这是第"+index+"首歌!");
	}

}
class NoThisSoundException extends Exception{
	//无参构造函数
	public NoThisSoundException(){
		super();    //调用Exception无参构造函数
	}
	//有参构造函数
	public NoThisSoundException(String a){
		super(a);    //调用Exception有参构造函数
	}

}

 

你可能感兴趣的:(Java)