2013-07-19 93 views
-4

我看着這個環節,但並沒有真正理解什麼是由clone拷貝構造函數繼承

反正到我的問題的意思,所以我有一個繼承了另一個類兩個屬性, 類是一類從具有set/get方法和複製構造函數繼承。

我想實現一個拷貝構造成繼承類(忽略代碼中的註釋)

public class Instructor extends Person{ 
    //officeNumber represents the office number where instructors can be found 
    private String officeNumber; 

    //constructor allows user to define first and last name and office number in demo 
    public Instructor(String fName, String lName, String officeNumber) { 
     super(fName, lName); 
     this.officeNumber=officeNumber; 
    } 
} 

我想在這裏把拷貝構造函數,到目前爲止我所能做的就是這一點,但我可以」牛逼只是傳遞一個對象到另一個構造的試聽課,我一定要包括全名

public Instructor(String fName, String lName,Instructor object2) { 
    super(fName,lName); 
    officeNumber=object2.officeNumber; 
} 
//get method for field 
public String getOfficeNumber() { 
    return officeNumber; 
} 
} 

這裏是它,如果這是任何幫助

繼承的類10
+1

它會出現你不明白變量範圍,對象,繼承或如何使用方法。您的基類爲您提供'firstName'和'lastName'的getters。我強烈建議從一本關於Java或Oracle Java教程的好手冊開始。 –

+0

如果有什麼不清楚的地方,給我發一條評論,我會盡力解決。 – gucci

+0

是的,我知道,我不能說fName = object2.fName,因爲它們不是來自同一個方法,但之前我沒有使用繼承,並且有這個類的拷貝構造函數,並且希望在保持整體繼承事情 – gucci

回答

1

請詳細說明您的問題。

你可以有這樣的導師拷貝構造函數,

此代碼僅適用於理解。

public class Instructor extends Person { 
    public String getIname() { 
     return iname; 
    } 

    public void setIname(String iname) { 
     this.iname = iname; 
    } 

    private String iname; 

    public Instructor(Person p, String myinstructor) { 
     super(p); 
     this.iname = myinstructor; 
    } 

    public Instructor(Instructor clone) { 
     super(clone); 
     this.iname = clone.iname; 
    } 
} 
+0

上述有什麼問題。爲什麼它被拒絕投票? – Karthikeyan

+0

無頭緒,謝謝你的回答 – gucci

+0

感謝您的投票。 – Karthikeyan