在寻找源代码时:实现了数组的clone()方法在哪里?

时间:2013-02-12 16:27:58

标签: java arrays eclipse clone

new String[] { "foo", "bar" }.clone();

使用我最喜欢的IDE(即Eclipse),我希望通过按住Ctrl键并单击来查看上述clone()方法的源代码(像往常一样),但它带给我的是到Object的原生的,只提供签名而不是方法的主体。

自动完成功能告诉我,所述clone()方法属于String类(clone() : String[] - String),但String类的源代码不提供此类一个方法(因为我正在处理String[]类......)。

那么,该实现隐藏在哪里?应该修复自动完成吗?

2 个答案:

答案 0 :(得分:8)

克隆数组的代码在JVM中(它是一种本机方法)。对于热点,它位于jvm.cpp的550/560行附近。

答案 1 :(得分:0)

令人困惑的是,Eclipse表示clone数组的String方法位于String类中。但是String数组的length方法来自String[]

enter image description here