java返回object的类型_为什么标准java类的clone()返回Object而不是实际的类型
生活随笔
收集整理的這篇文章主要介紹了
java返回object的类型_为什么标准java类的clone()返回Object而不是实际的类型
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在
java中允許指定函數(shù)返回的類型,例如下面的代碼
public class Test {
static class Dad {
Dad me() {
return this;
}
}
static class Son extends Dad {
Son me() {
return this;
}
}
}
已驗(yàn)證.
我們來看看ArrayList類.它已經(jīng)覆蓋了clone()函數(shù)(至少我看到它在Oracle jdk 1.7源代碼)
public Object clone() {
try {
@SuppressWarnings("unchecked")
ArrayList v = (ArrayList) super.clone();
v.elementData = Arrays.copyOf(elementData, size);
v.modCount = 0;
return v;
} catch (CloneNotSupportedException e) {
// this shouldn't happen, since we are Cloneable
throw new InternalError();
}
}
什么是不返回ArrayList< E>但只是對(duì)象?
總結(jié)
以上是生活随笔為你收集整理的java返回object的类型_为什么标准java类的clone()返回Object而不是实际的类型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python下标从0开始_从零学Pyth
- 下一篇: java内嵌excel_如何在Excel