Day16 objectAPI2 深度轉殖

2021-10-06 22:11:10 字數 1173 閱讀 4298

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...