为什么继承自Exception的类 无法捕获异常
class MyException : Exception
{
private Dictionary<int, string> m_data = new Dictionary<int, string>();
private int index=0;
public int MyIndex
{
set
{
index = value;
}
}
public MyException()
{
m_data.Add(-1, "true");
m_data.Add(1, "找不到指定item");
}
public override string Message
{
get
{
switch (index)
{
case 0: break;
default: return m_data[index];
}
return base.Message;
}
}
}
如下图 调试时 提示错误 却不捕获异常

...全文
相关推荐
捕获Throwable和捕获Exception的区别验证
捕获Exception时,不会捕获error,像out of memory这种问题会在中间件的日志可以看到,访问程序也会报相应的错误,方便问题定位;捕获Throwable时,会捕获Exception和Error,像out of memory这种问题也会被捕获到,而程序对于这种Error没法进行处理,没有捕获的必要性。
Java异常继承结构解析_动力节点Java学院整理
主要介绍了Java异常继承结构解析的相关知识,需要的朋友可以参考下
Java异常继承结构[代码]
本文详细介绍了Java中异常的继承结构。首先,所有异常和错误都继承自Throwable类,Throwable下分为Error和Exception两个分支。Error表示不可处理的错误,一旦发生将导致JVM终止运行。Exception则分为编译时异常和运行时异常,编译时异常要求程序员在编写代码时必须处理,否则编译器会报错;而运行时异常则可以在编写阶段选择处理或忽略。这一结构为Java程序的错误处理提供了清晰的框架。
JAVA 自定义异常 Exception
Exception JAVA 自定义异常 Exception JAVA 自定义异常 Exception
c# 自定义异常 Exception
自定义异常Exception,对于产品开发等比较有用


