黑马程序员技术交流社区
标题:
关于重载参数的问题
[打印本页]
作者:
lucy198921
时间:
2013-3-24 12:03
标题:
关于重载参数的问题
本帖最后由 lucy198921 于 2013-3-24 14:01 编辑
package com.itheima;
public class Test3 {
public void myMethod(String str) {
System.err.println("string");
}
public void myMethod(Object obj) {
System.err.println("object");
}
public static void main(String[] args) {
Test3 t = new Test3();
t.myMethod( null ); //传入参数null
}
}
这里我在方法中传入null,为什么会找 public void myMethod(String str) 这个方法?
作者:
刘凯
时间:
2013-3-24 12:12
你把上边的
public void myMethod(String str) {
System.err.println("string");
}
的方法注释了 就会走下边这个了
还可以 传入个非字符串 就会走Object了
所以我理解的是 它是先找比较小的类 也就是子类中符合要求的 如果子类没有符合要求的 就向上找
public void myMethod(int str) {
System.err.println("int");
}
public void myMethod(Integer str) {
System.err.println("Integer");
}
用上边这俩做实验 出入1 然后注释int 的 他就会去找Ineger 如果不注释 他就会找int
作者:
王晓楠
时间:
2013-3-24 12:28
因为多态吧。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2