以下是一个简单的代码示例,展示了如何将一个子类对象作为异常抛出:
class CustomException extends Exception {
private String message;
public CustomException(String message) {
this.message = message;
}
@Override
public String toString() {
return "CustomException: " + message;
}
}
class SubClass {
public void method() throws CustomException {
// 如果发生异常,创建一个子类对象并抛出
throw new CustomException("这是一个自定义异常");
}
}
public class Main {
public static void main(String[] args) {
try {
SubClass obj = new SubClass();
obj.method();
} catch (CustomException e) {
System.out.println(e);
}
}
}
在上面的代码中,我们定义了一个自定义异常类CustomException
,它继承自Exception
类。在SubClass
类的method
方法中,我们通过throw
关键字抛出了一个CustomException
的子类对象。在main
方法中,我们使用try-catch
块捕获并处理了这个自定义异常。最后,我们在catch
块中使用System.out.println
方法打印了异常对象的信息。
当运行上面的代码时,输出结果将是:
CustomException: 这是一个自定义异常
这表明我们成功地将一个子类对象作为异常抛出,并在catch
块中捕获并处理了它。