我是xxxx 2019-01-24 10:20 采纳率: 0%
浏览 412

JAVA 可变参数+方法重载 执行结果疑问

问题:
当代码如下编写时,为何会执行参数类型为char的方法,而不会执行其他方法?

代码如下

package cn.com;

public class M11 {

//    public static void f1(byte... bytes){
//        System.out.println("f1(byte)");
//    }

    public static void f1( long... longs ){
        System.out.println("f1(long)");
    }

    public static void f1( char... chars ){
        System.out.println("f1(char)");
    }

    public static void f1( int... ints ){
        System.out.println("f1(int)");
    }

    public static void main(String[] args) {
        f1();
        f1();
        f1();
    }
}

运行结果如下

f1(char)
f1(char)
f1(char)
  • 写回答

2条回答 默认 最新

  • mxxrgxg 2019-01-24 10:41
    关注

    图片说明
    我对你的源码进行编译之后再进行反编译得到的是这样的。
    所以建议研究一下jvm方面的

    评论

报告相同问题?

悬赏问题

  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算