Java 如何使用非自定义异常构造函数?
在Javadoc中,我可以看到带有字符串参数的类ClassCastException的构造函数。但是ClassCastException的实例是(由JVM)自动创建的,我不知道如何使用ClassCastException的构造函数 在我的代码中,我希望得到一个“错误”的结果,而不是“B不能转换为C”Java 如何使用非自定义异常构造函数?,java,Java,在Javadoc中,我可以看到带有字符串参数的类ClassCastException的构造函数。但是ClassCastException的实例是(由JVM)自动创建的,我不知道如何使用ClassCastException的构造函数 在我的代码中,我希望得到一个“错误”的结果,而不是“B不能转换为C” class-Prac{ 公共静态void main(字符串[]args){ 试一试{ ClassCastException e=新的ClassCastException(“错误”); A=新的B()
class-Prac{
公共静态void main(字符串[]args){
试一试{
ClassCastException e=新的ClassCastException(“错误”);
A=新的B();
C=(C)a;
}
catch(ClassCastException e){
System.out.println(e.getMessage());
}
}
}
甲级{
}
B类扩展了A类{
}
C类扩展了{
}
结果:无法将B转换为C如果希望结果为“错误”,则只需打印“错误”
无需对异常进行修补。捕获它并抛出自己的异常。您可以使用
抛出新的ClassCastException(“错误”)代码>为什么希望运行时异常包含较少/不正确的信息?
public static void main(String[] args) {
try {
A a = new B();
C c = (C)a;
}
catch(ClassCastException e) {
System.out.println("wrong");
}
}