你在CellTest中自定义一个它的构造函数,把创建Cell型数组的语句,以及对数组的赋值语句放在构造函数里面就好了。这样一旦你用CellTest类创建一个对象,它就自动创建了一个Cell型数组。
你这样会出错是因为,CellTest是一个类,而你直接在类当中创建对象(或者叫实例化对象)肯定不行啊,想一创建CellTest的对象就产生Cell型数组,你要把创建Cell型对象数组的过程放在构造函数中。或者把CellTest定义成一个方法(函数),而不要定义成类,然后调用之即可。
class Cell{
int row;
int col;
Cell(int row,int col){
this.row=row;
this.col=col;
}
}
class CellTest{
CellTest(int row,int col){
Cell[] cells=new Cell[4];
cells[0]=new Cell(row,col);//出错 为什么不能这么写?
}
}
class CellTest{
Cell[] cells=new Cell[4];//你这里申请的是一维数组,每一个下标都是对应一个Cell对象的引用
cells[0]=new Cell(3,4);//这里是成员变量、成员方法等的声明区域,你需要把这句放在函数里面才可以
}