我在方法重载方面有些困惑,任何人都可以解决这个问题.
在我的示例类中,我有一个名称显示的方法,它被重载,代码如下所示.
class Sample {
void display(byte num) {
System.out.println("under byte");
}
void display(short num){
System.out.println("under short");
}
void display(int num) {
System.out.println("under int");
}
void display(long num) {
System.out.println("under long");
}
public static void main(String... args) {
Sample sample = new Sample();
sample.display(10);
sample.display(128);
sample.display(134572);
sample.display(65757l);
}
}
Run Code Online (Sandbox Code Playgroud)
我得到了输出
under int
under int
under int
under long
Run Code Online (Sandbox Code Playgroud)
为什么即使数字小于127也jvm没有调用接受字节作为参数的方法?
提前致谢