2014-10-03 76 views
0

我剛開始說我是Java編程的新手。我有這樣的問題:Java Object創建不同的Class對象

我有這個類:

public class Unit 
{ 
    public boolean status; 
    public Unit() 
    { 
     status=true; 
    } 
    public boolean getstatus(){ 
     return status; 
    } 
    public void setstatus(boolean pStatus){ 
     status=pStatus; 
    } 
} 

,我需要叫TestUnit的是,當我使用它來創建一個對象的第二類,unpon創造它創建一個也單位班。

我該怎麼做?幫助將不勝感激。

P.S .:我正在與Bluej合作。

回答

0

如果您TestUnit類是在同一個包,那麼它可以只創建一個新的Unit實例是這樣的:

Unit u = new Unit(); 

但他們真的應該是在不同的包,例如

com.giaky.unit 
com.giaky.unit.test 

在這種情況下,您需要將導入該類到您的TestUnit類。你做到這一點與在文件的頂部線條,剛下package聲明,就像這樣:

import com.giaky.unit.Unit; 

之後,你可以創建你Unit類的實例,就好像它是在同一個包,與

Unit u = new Unit(); 

你的IDE會幫助您這一切:它應該能夠幫助您移動類不同的包,如果需要的話,也從一個包導入類到另一個。

導入是您需要很多東西,每次您使用JDK庫中的類時都需要。

+0

所以** TestUnit **類應該看起來像這樣? public class testUnit { public testUnit() { Unit unit_2 = new Unit(); } } – giaky3876 2014-10-03 21:04:07

+0

是的,沒錯(雖然顯然沒有太多的意義,除非你在創建它之後用它做點什麼!)。你可能希望有一個'TestUnit'類的'private'字段來存儲'Unit'的實例(或者你可能不會,這取決於你在做什麼)。 – 2014-10-03 21:08:08

+0

此外,請確保您將其稱爲「TestUnit」(首字母大寫),而不是「testUnit」(小寫字母首字母)。班級名稱應以大寫字母開頭(儘管嚴格來說不是錯誤不是這樣做的)。 – 2014-10-03 21:09:21

0

你在找這個嗎?

public class TestUnit{ 
    private Unit unit; 

    public TestUnit(){ 
     unit = new Unit(); 
    } 
} 
0
public class TestUnit{ 
    private Unit unit; 
    public TestUnit(){ 
     this.unit=new Unit();} 
    } 
    } 

//你可以添加其他方法和變量需要:)

0

你可以做這樣的事情:

public class TestUnit { 
    //You can create a reference to handle your Unit instance 
    private Unit myunit; 

    //Provide a constructor to assign a unit you create 
    public TestUnit(Unit myunit) { 
     this.myunit = myunit; 
    } 

    //Or provide a default constructor which instances a default one 
    public TestUnit() { 
     this.myunit = new Unit(); 
    } 

} 

我認爲這是可以處理的方式,我知道很好的答案會來,但這是我的方法根據你的描述:)

關心和快樂的公司丁:)。