具有自身数组的对象

时间:2014-03-27 00:36:37

标签: java arrays

我有一个类似的课程

public class Cell{    
    static{
        int x;
        int y;
        Cell[]  cells = new Cell[10];
    }
}

这是合法的还是正确的思考方式?让一个类包含一个自己的数组(这在C中是可能的)。

这是从设计敏感的角度思考它的正确方法吗?拥有Cell类然后是Cells类会更好吗?

2 个答案:

答案 0 :(得分:2)

如果你的类要包含一个自己的数组,那么它更像是这样:

public class Cell {    
    private int x;
    private int y;
    private Cell[] cells;

    // constructors, getters, setters, etc
    ...
}

答案 1 :(得分:2)

一个类有一个字段,其类型是一个组件类型与封闭类类型匹配的数组,这是完全合法的。但是,我建议将该字段设为类实例变量而不是静态字段。

public class Cell{    

        private int x;
        private int y;
        private Cell[]  cells = new Cell[10];
}

静态字段是类的成员,并且该类的每个实例都将引用相同的Cell[],而不是具有自己的不同Cell[]