国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

Effective java學(xué)習(xí)筆記10:改寫clone的時候要小心

瀏覽:3日期:2024-06-19 14:07:16
內(nèi)容: 看了這章,覺得這幾句話重要: 一個專家級程序員,從來都不會去改寫clone方法,也從來不去調(diào)用它,除非是為了低開銷來拷貝一個數(shù)組。 一個為了繼承而設(shè)計的類,如果未能實現(xiàn)一個行為良好的protected的clone方法,它的子類要實現(xiàn)cloneable接口是不可能的。 真的要做,如何實現(xiàn)改寫clone方法呢? 所有實現(xiàn)了cloneable接口的類都應(yīng)該用一個公有的方法改寫clone,這個方法要首先調(diào)用super.clone,如果所有的類都實現(xiàn)這么做,那么最終就會回溯到object的clone方法,不會得到clone得到不對的對象的情況。調(diào)用super.clone之后,把所有復(fù)雜對象設(shè)成初始狀態(tài),原始類型數(shù)據(jù)可以直接復(fù)制。 通常情況下,此時還需要對內(nèi)部的任何可變對象(比如堆棧,鏈表)進行深層結(jié)構(gòu)的拷貝。不能簡單的復(fù)制。 比如,A實例有一個堆棧Stack,調(diào)用A的clone方法,如果僅僅是令B的Stack=A的stack,那么修改A的stack同時會影響到B中stack的情況。所以,我們必須進行深層拷貝,防止這個問題。 Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd
標簽: Java
相關(guān)文章:
主站蜘蛛池模板: 台东市| 峨山| 台安县| 湘乡市| 临泉县| 台北县| 成武县| 辽宁省| 无极县| 嘉峪关市| 凤台县| 永新县| 海晏县| 徐闻县| 敦化市| 满洲里市| 丰顺县| 赣榆县| 汝南县| 定兴县| 伊川县| 南华县| 山东省| 潜江市| 方城县| 界首市| 漾濞| 太原市| 宝兴县| 全椒县| 彭泽县| 隆尧县| 视频| 清苑县| 仙居县| 衡水市| 金沙县| 罗山县| 凤山市| 襄城县| 宜兴市|