📅  最后修改于: 2020-04-05 07:04:48             🧑  作者: Mango
Java为我们提供了创建自己的异常的工具,这些异常基本上是Exception的派生类。例如,以下代码中的MyException扩展了Exception类。
我们将字符串传递给超类的构造函数-Exception,该异常是在创建的对象上使用“ getMessage()”函数获得的。
// Java展示使用用户定义的异常
class MyException extends Exception
{
public MyException(String s)
{
// 调用父类的异常构造函数
super(s);
}
}
// 使用MyException的类
public class Main
{
// 测试程序
public static void main(String args[])
{
try
{
// 抛出用用户定义异常
throw new MyException("芒果芒果");
}
catch (MyException ex)
{
System.out.println("被捕获");
// 从MyException异常打印信息
System.out.println(ex.getMessage());
}
}
}
输出:
被捕获
芒果芒果
在上面的代码中,MyException的构造函数需要一个字符串作为其参数。该字符串使用super()传递给父类Exception的构造函数。也可以在没有参数的情况下调用Exception类的构造函数,且对super的调用不是强制性的。
// Java展示使用用户定义的异常
class MyException extends Exception
{
}
// 使用MyException的类
public class setText
{
// 测试代码
public static void main(String args[])
{
try
{
// 抛出用户定义的异常
throw new MyException();
}
catch (MyException ex)
{
System.out.println("被捕获");
System.out.println(ex.getMessage());
}
}
}
输出:
被捕获
null