变量参数类?

Aja*_*jay 3 java arrays class variadic-functions

以下代码

    public static void main(String[] args) {
        fun(new Integer(1));
    }
    static void fun(Object ... a) {
        System.out.println(a.getClass());
    }
Run Code Online (Sandbox Code Playgroud)

给出输出: -

class [Ljava.lang.Object;
Run Code Online (Sandbox Code Playgroud)

这是什么课?

Tho*_*ung 7

一个Object[]数组.

要获取运行时类型信息:

a.getClass().isArray() -> true
a.getClass().getComponentType().getName() -> java.lang.Object
Run Code Online (Sandbox Code Playgroud)


dfa*_*dfa 6

根据JVM规范,它只是一个java.lang.Object数组:

  • [表示单维数组
  • LfullyQualifiedName; 指一类L; 只是语法