对于 Java 异常,getMessage
和 getLocalizedMessage
方法之间有什么区别?
在执行错误处理时,我使用这两种方法来获取 catch 块抛出的消息。它们都从错误处理中得到了消息,但是这两者到底有什么不同呢?
我在互联网上搜索了一下,在 问答网站上找到了这个答案:
Java 异常从 Throwable 继承它们的 getMessage 和 getLocalizedMessage 方法(请参阅相关链接)。区别在于,子类应重写 getLocalizedMessage 以提供特定于语言环境的消息。
例如,想象您正在将来自讲美式英语的公司/团队的代码改编成英式英语的团队。您可能希望创建自定义 Exception 类,这些类覆盖 getLocalizedMessage,以便将拼写和语法更正到将要使用您的代码的用户和开发人员可能期望的程度。这也可以用于异常消息的实际翻译。
问题 :
这是否意味着 特定语言实现?如果我使用 e.getLocalizedMessage()
例如我的应用程序在 说英语-错误将抛出在 English
,如果我使用我的应用程序在 西班牙语-那么错误将抛出在 西班牙语?
需要一些明确的解释,在何时何地我可以使用这些方法来使用/