黑马程序员技术交流社区

标题: Throwable类的getMessage(),getLocalizedMessage()有区别吗? [打印本页]

作者: 李哲    时间: 2012-3-27 23:57
标题: Throwable类的getMessage(),getLocalizedMessage()有区别吗?
下面是自定义异常教程的代码

class FuShuException extends Exception
{
        private int value;

        FuShuException(String msg,int value)
        {
                super(msg);       
                this.value=value;
        }
        public int getValue()
        {
                return value;
        }
}

class Demo
{
        int div(int a,int b)  throws FuShuException
        {
                if (b<0)
                        throw new FuShuException("出现除数是负数情况!",b);
                return a/b;
        }
}

class ExceptionDemo2
{
        public static void main(String[] args)
        {
                Demo d=new Demo();
                try
                {
                        int x=d.div(4,-1);
                        System.out.println("x="+x);       
                }
                catch (FuShuException e)
                {
                        System.out.println(e.toString());       
                        System.out.println(e.getMessage());       
                        System.out.println(e.getLocalizedMessage());
                        System.out.println("出现负数:"+e.getValue());       
                }               
                        System.out.println("over!");       
        }
}

打印结果显示System.out.println(e.getMessage());       
                     System.out.println(e.getLocalizedMessage());两者返回结果相同,只是我还是想知道两者有区别吗?

因为API文档内容说:
super(msg);        也就是父类Exception的构造方法Exception(String message) 构造带指定详细消息的新异常!也就是可以将自己定义的信息传入FuShuException,但是传入之后,哪个方法可以显示出来?

toString()方法返回
此对象的类的 name
": "(冒号和一个空格)
调用此对象 getLocalizedMessage() 方法的结果


getLocalizedMessage()方法返回 Exception的本地化描述。

getMessage()方法返回 Exception的详细消息字符串。

老师经常使用toString()和getMessage()方法,其实toString()用的也是getLocalizedMessage()方法,上面有解释。
getLocalizedMessage()方法和getMessage()方法两者的结果总是相同吗?



作者: guojs    时间: 2015-9-2 20:00
赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞
作者: guojs    时间: 2015-9-2 20:20
犀利  犀利  犀利  




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2