如何访问自定义异常类的成员变量后,我们在一个catch参数捕获它?为什么我们得到这个错误,尽管runtimeType显示它是customException类型而不是Object类型?
class CustomException implements Exception{
//Custom Exception class
String message;
int numberMessage;
CustomException(this.message, this.numberMessage);
@override
String toString() {
return message;
}
}
void main() {
try {
throw CustomException('This is the best', 1223);
} catch (z,t) {
print(z);
print(z.runtimeType); //Prints 'CustomException'
print(z.numberMessage); //How do I access this member? Shows an error 'the getter
//...numberMessage isn't defined for class Object'.
print(t.runtimeType);//Prints _StackTrace
}
}
我尝试在catch关键字中添加CustomException类型,但即使这样也不起作用,因为它是一个错误的语法。
catch(CustomException z, t)
1条答案
按热度按时间ovfsdjhp1#
在catch块中有一个关键字来捕获特定类型的异常,你可以像下面这样使用-