正如大家上面提到的 –
据我了解,getMessage()返回异常的名称。 getLocalizedMessage()以用户的本地语言(中文,日语等))返回异常的名称。为了使这个工作,您调用getLocalizedMessage()的类必须覆盖getLocalizedMessage()方法。如果没有,则调用其中一个超类的方法,默认情况下只返回getMessage的结果。
除此之外,我想放一些代码段来解释如何使用它。
如何使用它
Java没有什么魔法,但它确实提供了一种使我们的生活更轻松的方法。
要有效地使用getLocalizedMessage(),我们必须覆盖默认行为。
import java.util.ResourceBundle;
public class MyLocalizedThrowable extends Throwable {
ResourceBundle labels = ResourceBundle.getBundle(“loc.exc.test.message”);
private static final long serialVersionUID = 1L;
public MyLocalizedThrowable(String messageKey) {
super(messageKey);
}
public String getLocalizedMessage() {
return labels.getString(getMessage());
}
}
在此示例中,您必须在loc / exc / test路径中放置特定于语言的属性文件。例如: