第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如下內(nèi)容,我為什么不能調(diào)用clone()???

如下內(nèi)容,我為什么不能調(diào)用clone()???

PHP
四季花海 2023-04-24 19:15:15
package test;public class C extends Object {void test() {Object object = new Object();object.clone();//The method clone() from the type Object is not visible}}
查看完整描述

2 回答

?
慕碼人2483693

TA貢獻1860條經(jīng)驗 獲得超9個贊

Object類對象是無法被clone的,至少當引用obj被聲明為Object類的時候,你不能這么做... 
因為Java中并不是所有的類都可以被克隆(而且JDK中還描述說不能保證某些類clone的結(jié)果x.clone()!=x絕對成立),所以O(shè)bject類對象無法調(diào)用clone()... 
還有super不是指Object而是指其父類的引用。
由于clone是object類的一個protected方法,代碼中不能直接調(diào)用它
子類只能受保護的clone方法克隆他自己,為此必須重新定義clone方法,
并將其設(shè)為public,一般情況下,建議實現(xiàn)cloneable標記接口,并通過調(diào)用super.clone()方法。

查看完整回答
反對 回復 2023-04-27
?
慕斯王

TA貢獻1864條經(jīng)驗 獲得超2個贊

你要用clone()方法,必須將C實現(xiàn)Cloneable標記接口才可以,我覺得你應(yīng)該這個測試
public class C extends Object implements Cloneable{

void test() {
C c= new C();
C c2=(Object) c.clone();//The method clone() from the type Object is not visible
}
}

查看完整回答
反對 回復 2023-04-27
  • 2 回答
  • 0 關(guān)注
  • 233 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號