【发布时间】:2009-08-20 10:42:40
【问题描述】:
我需要更改现有服务 API 以针对某个场景引发额外的异常。该异常将是已抛出异常的子类型。这样做可以吗,还是会被视为向后不兼容?
我有一个单独的 jar 中的接口,所以如果我的服务抛出这个新异常,它是已经抛出的一个子异常并且客户端没有新 jar,它会破坏客户端还是他能够仍然像以前一样捕获父异常?
问题是我们有一个非常通用的异常,每个异常情况都会抛出,一些客户端想要更好的方法来识别异常 - 除了解析异常中的消息,但如果我们引入,并非所有客户端都可以升级接口一个新的例外 - 如何最好地处理这种情况?
谢谢 阿文德
【问题讨论】:
标签: api exception backwards-compatibility