即使不存在将数组作为参数的println方法,下面的指令也会编译而不会出错。 为什么会这样?我原以为它不会编译
System.out.println(newArray());
答案 0 :(得分:3)
有println方法接受Object
。根据{{3}}:
在Java编程语言中,数组是对象
答案 1 :(得分:1)
请参阅sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 1, and there are 74 supplied。 (我添加的代码格式)。
public void println(Object x)
打印
Object
然后终止该行。此方法首先调用String.valueOf(x)
来获取打印对象的字符串值,然后就像调用print(String)
然后调用println()
一样。
正如评论中所提到的,在Java中,一切都是Object
。 Object
被称为"根类"因为所有其他类都扩展它。因此,您可以将任何内容传递给println
。