2014-10-03 75 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(); 
    } 

} 

我认为这是可以处理的方式,我知道很好的答案会来,但这是我的方法根据你的描述:)

关心和快乐的公司丁:)。