public
class
day1601
}class
firstlevel
implements
cloneable
@override
protected object clone()
throws clonenotsupportedexception
@override
public string tostring()
";}static
class
secondlevel
implements
cloneable
//secondlevel完成對自己的深度轉殖
@override
protected object clone()
throws clonenotsupportedexception
@override
public string tostring()
";}}
static
class
thirdlevel
implements
cloneable
@override
public string tostring()
";}/*完成對thirdlevel物件的深度拷貝,只不過thirdlevel知道自己只包含基本資料型別的值
* 所以,直接利用object的clone方法,就可以完成對自己的深度轉殖*/
@override
protected object clone()
throws clonenotsupportedexception
}}
思路:實現深度轉殖的思路(類似於遞迴):
1.首先每個類,知道自己有哪些成員變數,成員變數中哪些是引用型別成員變數
2.然後讓每個類自己實現對自己的深度轉殖方法
3.實現深度轉殖就變得簡單了:
a.首先利用super.clone()即object的clone方法,完成對自己的轉殖
b.如果本類中有引用型別的成員,那麼因為所有類都實現了對自己的深度轉殖
所以直接呼叫引用型別的成員所指向物件的clone方法,讓他們自己完成自己的深度轉殖
c.將引用型別成員變數的值,讓他們指向深度轉殖後的物件
J2SE基礎學習 Day16
1.正規表示式 對字串的規則 轉義字元 t 製表符 r 回車符 n換行符 範圍 取反 代表任何字元 d相當於0 9 w0 9a z 0 9 1 34578 0 9 2.string類中和正則相關的方法 matches split使用規則對字串進行切割,返回乙個字串陣列 3.date類 date類構造...
實習日記 Day16
今日份新想法 今天不在公司寫實習日記啦,在回學校的路上寫 今日地鐵 思 今天中午飯後,帶著我去了公司 附近的公園遛彎兒。一路走得飛快,興致勃勃。跟他的健步比起來,我一點都沒有年輕人該有的朝氣與活力 這才上班半個月,我現在週末的狀態就完全不比往日,變得昏昏欲睡,萎靡不振。在辦公室久坐,的確是不行啊。今...
day16 高階函式
匿名函式 高階函式 滿足倆個特性任意乙個即為高階函式 1.函式的傳入引數是乙個函式名 2.函式的返回值是乙個函式名 map num l 1,2,10,5,3,7 lambda x x 1 def add one x return x 1 lambda x x 1 def reduce one x r...