在Java中创建用户定义的异常

到目前为止,您已经知道如何处理Java API抛出的java中的异常,但是有时您可能偶尔需要抛出自己的异常,即,如果遇到这些异常均不能准确描述异常的情况,或者您可以在Java API中找不到合适的异常,您可以编码一个类,该类定义更合适的异常,并且该异常处理机制称为CustomUser Defined Exception

在Java API中,所有异常类都有两种构造函数。首先称为默认构造函数,它不接受任何参数。另一个构造函数接受一个字符串参数,该参数提供有关异常的其他信息。因此,以这种方式,Custom异常就像Java API中的其余异常类一样。

自定义异常有两种主要的用例:

  • 发生问题时,您的代码可以简单地引发自定义异常。

  • 您可以通过添加自己的消息来包装提供额外信息的异常。

Custom异常的代码:

public class ExceptionClassNameextends Exception
{
	publicExceptionClassName(){ }
	publicExceptionClassName(StringMessage)
	{
		super(message);
	}
}

考虑一下程序:

import java.util.*;
class StudentManagement extends Exception
{ 
	StudentManagement(String errmsg)
	{
		super(errmsg);
	}
}

class UserDefinedException
{
	public static void main(String arg[])
	{ 
		try
		{
			Scanner KB=new Scanner(System.in);
			System.out.print("Enter Percentage:");
			int per=KB.nextInt();
			if(!(per>=0 && per<=100))
			{ 
				throw(new StudentManagement("Invalid Percentage...."+per));
			}
			else
			{
				System.out.println("Valid Percentage...");
			}
		}
		catch(StudentManagement e)
		{
			System.out.println(e);
		}
	}
}