推 lachtchlee:Object clone()是Object 類 的 方法格式 don't change 09/29 20:12
推 LaPass:newObj = (myBorder)clone(); ← 有加嗎? 09/29 20:14
→ lachtchlee:the return type 09/29 20:14
→ aoksc:一樓意思是他clone()回傳型態強制是Object嗎? 09/29 20:19
→ aoksc:二樓方法也可以 但還是要轉型 因為你回傳還是Object型態 09/29 20:22
推 lachtchlee:class Object 內定義的 be defined by ~~~ 09/29 20:23
推 LaPass:clone(); ← 這是繼承自Object的方法,你沒辦法改他。 09/29 20:25
→ lachtchlee:所以不要改 也 不能改變它 09/29 20:26
→ aoksc:所以意思是說clone本身定義的return他就已經是轉型成Object? 09/29 20:32
推 tomap41017:應該說你在沒有override clone的情況下,預設就是看到 09/29 20:50
推 tomap41017:Object所寫的,當然是return Object囉 09/29 20:53
→ lachtchlee:就算override clone() 它還是 return Object 09/29 21:12
推 LaPass:Java 的 override不能改型別 C#才可以 09/29 21:13
→ hetea:Object java.lang.Object.clone() 回傳是Object 09/29 21:54
→ sbrhsieh:就 Java PL 層面來說,overriding method return type 09/30 00:59
→ sbrhsieh:不是非得同 overriden mehod return type。Java 1.5 開始 09/30 01:01
→ sbrhsieh:有 covariant returns. 09/30 01:08
推 LaPass:我錯了 剛剛試了一下 override clone()的傳回型別可以改 09/30 08:28