本帖最后由 王俊杰 于 2013-3-12 23:28 编辑
前几天在看张老师基础加强视频的第九个“09_可变参数与OverLoad相关面试题分析”。
讲到overload的时候我想起一个概念来,叫做“方法头标志”.
我感觉引入这个概念能够更容易的解释清楚关于overload的问题。
下面是引用的文字:
方法重载就是指,两个方法具有相同名称和不同的参数形式。
方法名和参数形式合称方法头标志。
调用方法时,Java运行系统能够根据方法头标志决定调用哪个方法。
重载方法可使程序更清晰易读。执行相似任务的方法应该给予相同的名称。
被重载的方法必须具有不同的参数形式。
不能基于不同的修饰符或返回值类型重载方法。
在《Java核心技术·基础卷》里面我终于找到了对这个“方法头标志”的描述,用词不是“方法头标志”,而是叫做“方法的签名”,英文是signature。
其中明确指出,返回类型不是方法签名的一部分,也就是说,不能有两个名字相同,参数类型也相同,却返回不同类型值得方法。
不管“方法头标志”也好,还是“方法的签名”也好,我感觉这个概念还是比较重要的。 |
|