看板 java 關於我們 聯絡資訊
class Oeuvre { // Completer la classe Oeuvre ici private String titre; private String langue = "francais"; private Auteur auteur; public Oeuvre(String t, Auteur a, String l) { this.titre = t; this.auteur = a; this.langue = l; } } class Exemplaire extends Oeuvre { public Exemplaire (Oeuvre o){ super(o.getTitre(),o.getAuteur(),o.getLangue()); } } 請問有沒有比較簡單的方法可以用建構子Exemplaire把Oeuvre轉成Exemplaire? 好像可以把Oeuvre o直接變成這個Exemplaire的reference? 請問要怎麼做呢? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 90.27.4.126 ※ 文章網址: http://www.ptt.cc/bbs/java/M.1416694533.A.667.html ※ 編輯: wtchen (90.27.4.126), 11/23/2014 06:29:18
mintle: 父類別轉子類別這職種沒辦法轉 因為子類別有的東西父類別 11/23 07:58
mintle: 不見得有 11/23 07:58
mintle: 實際上使用 直接用Exemplaire的預設建構子 產生物件後 11/23 08:00
mintle: 就可以當作Exemplaire使用了 11/23 08:00
mintle: 但前提是要使用的父類別的值或方法 要改成protected 11/23 08:01
mintle: 我看我回文好了 比較清楚 11/23 08:01
mintle: 如果可以 請你把部分程式貼上來 指出問題點 比較容易理 11/23 08:17
mintle: 解你的問題點 看起來像是你只有父類別物件想要硬轉成子類 11/23 08:17
mintle: 別,但是reference又要相同 是嗎? 11/23 08:17
ssccg: 不能轉,父類別物件不是子類別物件 11/23 14:13
ssccg: 只能new新的子類別物件,把父類別物件有的field複製過去 11/23 14:14
ssccg: 你現在的作法不就是這樣了? 11/23 14:14