黑马程序员技术交流社区
标题:
super(message)和super(msg)的区别。
[打印本页]
作者:
黑马-周科
时间:
2013-1-26 14:41
标题:
super(message)和super(msg)的区别。
本帖最后由 黑马-周科 于 2013-1-27 15:49 编辑
最近看毕老师的视频讲异常。遇到了几个看不明白的地方。求解释,
1.
class FuShuException extends Exception
{
FuShuException(String msg)
{
super(msg); //
msg不同处
}
}
2,
class NoValueException extends RuntimeException//Exception //定义面积异常
{
NoValueException(String message)
{
super(message); //
message不同处
}
1和2中的红颜色标识的不同处有什么却别?
是一种简写方式吗?
作者:
王晓斌
时间:
2013-1-26 14:58
呃,这只是个形式参数,你定义什么都行~~~~只要和你定义中的方法参数相同即可~~~
作者:
冯佩
时间:
2013-1-26 16:45
message或msg都只是形参的变量名而已,只要保证参数类型是String,变量名用什么字母代表则无所谓。
作者:
刘军亭
时间:
2013-1-26 16:58
那只是起个名字,可以随便取的
作者:
罗广伟
时间:
2013-1-26 17:46
本帖最后由 罗广伟 于 2013-1-26 17:49 编辑
因为FuShuException继承了Exception类而Exception中有一个构造方法是
2.png
(6.58 KB, 下载次数: 71)
下载附件
2013-1-26 17:38 上传
FuShuException建立对象的时候会访问父类构造方法,此时传递了(String msg),此参数会访问父类Exception的Exception(String message)构造方法(也就是上图构造方法)
在这个构造方法中要传递的是String类型的参数而msg和message只是一个变量名,所以在你问题中这两个只是名字的不同,其实没什么区别
即使你写a,b也是可以的。但是为了易读和规范所以写成message或msg。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2