2d数组,在另一个类中保存一个类的对象

时间:2016-04-12 19:29:11

标签: java arrays class

我想创建一个2d数组(它在下面注释掉的块中完成的方式),它保存Cell对象。但是我不想在Cell类中创建这个数组但是在Game类中。我不知道该怎么办?如果我只是把它放在游戏类中,那么我会得到一个未知类的错误。在c ++中,包含可以做但在java中我很新...

<div class="user-view">

<h1><?= Html::encode($this->title) ?></h1>

<p>
    <?php $form = ActiveForm::begin(); ?>
    <?= $form->field($model, 'unique_key') ?>
    <?= Html::a('Test', ['//order/create', 'unique_key' => 'entered key here'], ['class' => 'btn btn-success']) ?>
    <?php ActiveForm::end(); ?>
</p>

编辑:所有课程都在一个包中

2 个答案:

答案 0 :(得分:1)

在将新的Cell实例分配给数组时,int i和int j在构造函数中传递,即new Cell(i,j),但没有构造函数在Cell.java中定义了两个参数。此外,如上所述,当返回类型声明为Type Cell时,getCell方法不返回任何内容。 Cell.java可以修改如下:

public class Cell {

public int positionX;
public int positionY;
public int valueOfCell = 0;

public Cell(int i, int j) {
    this.positionX = i;
    this.positionY = j;
}

public Cell getCell() {
    return this;
}

public void setCell(Cell object, int Nvalue) {
    object.valueOfCell = Nvalue;
}

}

另外,我会将positionX,positionY和valueOfCell声明为private而不是public,而是使用getter和setter。

答案 1 :(得分:0)

将Cell导入Cell.java文件顶部的Game类:

import Cell;

如果游戏包外的Cell位于。

,请为其提供完全限定的包名称