printStackTrace()、toString()、getMessage()的区别

1、创建Exception对象
按照与创建Java对象一样的方法创建违例对象:在内存“堆”里,使用new来创建。
举例:

if (t  ==   null )
throw   new  NullPointerException();

这样便“掷”出了一个违例。在当前场景中,它使我们能放弃进一步解决该问题的企图。
该问题会被转移到其他更恰当的地方解决。准确地说,那个地方不久就会显露出来。

2、printStackTrace()、toString()、getMessage()的区别

  • public void printStackTrace()
    将此 throwable 及其追踪输出至标准错误流。
    此方法将此 Throwable或Exception 对象的堆栈跟踪输出至错误输出流,作为字段 System.err 的值。
    输出的第一行包含此对象的 toString() 方法的结果。剩余行表示以前由方法 fillInStackTrace() 记录的数据。
    输出格式举例:
    java.lang.NullPointerException
             at MyClass.mash(MyClass.java:
    9 )
             at MyClass.crunch(MyClass.java:
    6 )
             at MyClass.main(MyClass.java:
    3 )

    使用举例:
    try {
    //Java程序代码
    }

    catch (Exception e) {
    e.printStackTrace();
    }
     
  • public String getMessage()
    返回此 Throwable或Exception 的详细消息字符串。
    使用举例:
    try {
    //java程序代码
    }

    catch (Exception e) {
    System.out.println();
    }
     
    public String toString()

    返回此 Throwable或Exception  的简短描述。
    如果此 Throwable或Exception  对象是利用非空详细消息字符串创建的,则结果是三个字符串的串联:
    1)此对象的实际类的名称
    2)": "(冒号和空格)
    3)此对象的 getMessage() 方法的结果
    如果此 Throwable或Exception  对象利用 null 详细消息字符串创建,则返回此对象的实际类的名称。 使用举例:
    try {
    //Java程序代码
    }

    catch (Exception e) {
    System.err.println(e.toString());
    }

             


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值