在java类中 创建引用型数组 然后new数组中的元素,报错怎么解释?
classCell{introw;intcol;Cell(introw,intcol){this.row=row;this.col=col;}}classCellTest...
class Cell{
int row;
int col;
Cell(int row,int col){
this.row=row;
this.col=col;
}
}
class CellTest{
Cell[] cells=new Cell[4];
cells[0]=new Cell(3,4);//出错 为什么不能这么写?
} 展开
int row;
int col;
Cell(int row,int col){
this.row=row;
this.col=col;
}
}
class CellTest{
Cell[] cells=new Cell[4];
cells[0]=new Cell(3,4);//出错 为什么不能这么写?
} 展开
2个回答
展开全部
你在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);//出错 为什么不能这么写?
}
}
你这样会出错是因为,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);//出错 为什么不能这么写?
}
}
追问
CellTest是一个类,而你直接在类当中创建对象(或者叫实例化对象)肯定不行啊
CellTest{
Cell[] cells=new Cell[4]; new是创建对象 这里为什么不报错
}
CellTest是一个类,而你直接在类当中创建对象(或者叫实例化对象)肯定不行啊
CellTest{
Cell[] cells=new Cell[4]; new是创建对象 这里为什么不报错
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询