异常链

✍ dations ◷ 2025-06-09 16:11:52 #软件设计模式

异常链是一种面向对象编程技术,指将捕获的异常包装进一个新的异常中并重新抛出的异常处理方式。原异常被保存为新异常的一个属性(比如)。这个想法是指一个方法应该抛出定义在相同的抽象层次上的异常,但不会丢弃更低层次的信息。

比如,播放视频文件的方法可能捕获读取文件过程中的异常,将其包装在新抛出的播放视频文件的异常中。用户界面部分不需要知道读取字节块、 eof() 调用或其他操作时发生的错误,这是意外的文件结尾、读取错误或者其他的错误:用户界面只需要从 属性中提取出异常信息。用户界面层会有自身一系列的异常。若对 感兴趣,可以在调试期间、或在适当的日志中查看异常的堆栈跟踪信息( stack track )。

Java 中 受控异常(Checked exceptions) 特别强调了抛出正确类型的异常,从 Java 1.4版本开始,几乎所有的异常都支持异常链。

在运行时环境,比如 Java 或 .Net 中,都有工具连接到运行时引擎;每当感兴趣的异常发生,这些工具就记录下内存中的调试信息以及抛出异常的时间(栈和堆上的值)。这些工具提供异常截取(Exception Interception)功能,它们为生产环境、测试环境、开发环境中的Java程序中出现的的异常提供了信息。

相关

  • 布朗芬布伦纳尤里·布朗芬布伦纳(英语:Urie Bronfenbrenner,1917年4月29日-2005年9月25日)美国著名的心理学家, 他的生态系统理论为人所熟悉。 他也是Head Start项目的创始人之一,这个项目研究
  • 蛋白石蛋白石,英语音译为“Opal”或“澳宝”,宝石学名称为欧泊,是二氧化硅的水合物,成分为SiO2·n H2O,是非晶质结构,所以无一定的外形,断口为贝壳状,主要是二氧化硅的胶体沉淀形成的,如果
  • 麦金农罗德里克·麦金农(英语:Roderick MacKinnon,1956年2月19日-),美国洛克菲勒大学分子神经生物学和生物物理学教授。因对细胞膜中的离子通道功能的物理化学属性的研究,尤其是X射线晶体
  • 杰斐缅柯方程在电磁学里,给予含时电荷密度分布和电流密度分布,可以使用杰斐缅柯方程(Jefimenko equation)来计算电场和磁场。这方程因其发现者物理学家欧雷格·杰斐缅柯(英语:Oleg D. Jefimenk
  • 旷野之声旷野之声(朝鲜语:광야의소리/曠野의소리,英语:Voice of Wilderness)是韩国针对朝鲜的基督教福音广播,广播语言为朝鲜语。韩国的教会在过去经常用气球将传单带到朝鲜,以达到传教的目
  • 黄觉黄觉(1975年8月17日-),本名黄珏,广西南宁人,壮族,中国大陆男演员。1992年毕业于广西艺术学院舞蹈系,出演过多部电视剧和电影。黄觉原名“黄珏”,因许多人常将“珏”字念错,于是在出道
  • Hamed Ehadadi哈米德·埃哈达迪(波斯语:حامد حدادی‎,英语:Hamed E. Haddadi,1985年5月19日-),出生于伊朗胡齐斯坦省阿瓦士,伊朗职业篮球运动员,曾效力于美国NBA的孟菲斯灰熊、菲尼克斯太
  • seventeenSeventeen可能指以下其中一项:
  • 阿兰-勒内·勒萨日阿兰-勒内·勒萨日(法语:Alain-René Lesage,法语发音:.mw-parser-output .IPA{font-family:"Charis SIL","Doulos SIL","Linux Libertine","Segoe UI","Lucida Sans Unicode","
  • 吴鸿麟吴鸿麟(1899年9月28日-1995年3月29日),中国国民党政治人物,台湾桃园县(今桃园市)客家人、医师。曾历任桃园县议员、议长、县长。设有吴鸿麟奖学金。吴鸿麟于1899年(明治32年)9月28日