作者wtchen (沒有存在感的人)
看板java
標題[問題] 不太懂怎麼把母class轉型成子class
時間Sun Nov 23 06:15:30 2014
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://webptt.com/m.aspx?n=bbs/java/M.1416694533.A.667.html
※ 編輯: wtchen (90.27.4.126), 11/23/2014 06:29:18
1F:推 mintle: 父類別轉子類別這職種沒辦法轉 因為子類別有的東西父類別 11/23 07:58
2F:→ mintle: 不見得有 11/23 07:58
3F:→ mintle: 實際上使用 直接用Exemplaire的預設建構子 產生物件後 11/23 08:00
4F:→ mintle: 就可以當作Exemplaire使用了 11/23 08:00
5F:→ mintle: 但前提是要使用的父類別的值或方法 要改成protected 11/23 08:01
6F:→ mintle: 我看我回文好了 比較清楚 11/23 08:01
7F:推 mintle: 如果可以 請你把部分程式貼上來 指出問題點 比較容易理 11/23 08:17
8F:→ mintle: 解你的問題點 看起來像是你只有父類別物件想要硬轉成子類 11/23 08:17
9F:→ mintle: 別,但是reference又要相同 是嗎? 11/23 08:17
10F:→ ssccg: 不能轉,父類別物件不是子類別物件 11/23 14:13
11F:→ ssccg: 只能new新的子類別物件,把父類別物件有的field複製過去 11/23 14:14
12F:→ ssccg: 你現在的作法不就是這樣了? 11/23 14:14