java类对象的值是否与类名相同?

时间:2016-02-08 19:41:24

标签: java

您好我是java编程的初学者,并且无法理解对象的值是什么。我正在调试以下程序,在查看eclipse中的变量选项卡时,我看到变量名为ex,值为Exception。我不明白类的实例是否具有与类名相同的值。 有人可以帮忙。

public void abc(int i)throws Exception{
    i++;
    throw new Exception("Exception");
}
public static void main(String [] args){
    try{
        Test t = new Test();
        t.abc(5);
    }catch(Exception ex){
        System.out.println(ex.toString());
    }
}

2 个答案:

答案 0 :(得分:2)

异常的值是你传递给它的构造函数的任何东西:

throw new Exception("Exception");

当您传递字符串"异常"时,您会看到与ex值相同的内容。

一般来说,打印异常的更好方法是使用其printStackTrace方法,该方法提供了更多详细信息:

 ex.printStackTrace();

答案 1 :(得分:1)

在您的情况下,类Exception的实例具有值"异常"。您已在abc方法中进行了设置。如果更改Exception类的构造函数中的值,如:

throw new Exception("Some value");

你将拥有"一些价值"结果。