黑马程序员技术交流社区
标题:
java异常中有关super使用的问题,求教,前辈
[打印本页]
作者:
蓝蓝的天
时间:
2015-4-13 15:59
标题:
java异常中有关super使用的问题,求教,前辈
自动以异常中;代码如下:class FuShuException extends Exception//自定义异常
{
public String getMessage()//复写Exception中的getMessage方法
{
return msg;
}
}
上面的代码等价于下面的super语句-----》》》问题是FuShuException 继承了Exception,Exception继承了Throwable;也就是FuShuException继承了 >>>>>>>>>>>>Throwable中的构造方法;可是getMessage并不是Throwable中的构造方法,不是随着Throwable的加载而 加载,创建FuShuException后使用super语句,会自动调用getMessage方法吗?---》》为什么会调用 呢?
FuShuException(String msg)
{
super(msg);
}
-------------------------------------------------------------------------
private String message;
Throwable(String message)//这是Throwable的构造函数,它只是将它的类中的String变量传递给message;
{
this.message = message;
}
public String getMessage()//而这个getMessage方法,不是随着Throwable的加载而加载吧,它只是Throwable的一个方法吧!
{
return message;
}
------------------------------------------------------------------------------------------------
作者:
sisel
时间:
2015-4-13 16:22
super代表父类,super()自然就是父类构造方法,有符合方法签名的非private方法就能调用
作者:
蓝蓝的天
时间:
2015-4-13 16:29
可是自定义异常使用getMessage方法时需要自己复写一次啊,这个getMessage方法不是默认构造的啊!前辈
作者:
蓝蓝的天
时间:
2015-4-13 16:30
getMessage方法 不是默认的,也就是抛异常时需要调用getMessage方法 ,是不是应该在自定义异常时声明一下呢?
作者:
蓝蓝的天
时间:
2015-4-21 14:23
大神们,有没有知道的呀~
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2