创建新对象错误JAVA android
我计划有一个方法来创建一个新对象,这样我每次调用它时都可以更新该方法 代码如下:创建新对象错误JAVA android,java,android,class,object,Java,Android,Class,Object,我计划有一个方法来创建一个新对象,这样我每次调用它时都可以更新该方法 代码如下: public class CollectedData { List<BusSearchOuterDataResults> busData = new ArrayList<BusSearchOuterDataResults>(); public BusSearchOuterDataResults outerData; public void createNewOu
public class CollectedData {
List<BusSearchOuterDataResults> busData = new ArrayList<BusSearchOuterDataResults>();
public BusSearchOuterDataResults outerData;
public void createNewOuterDataObject(){
outerData = new BusSearchOuterDataResults();
this.outerData = outerData;
}
public void createNewInnerDataObject(){
outerData.createNewInnerDataObject();
}
public void addAllCollectedData(){
busData.add(outerData);
}
public List<BusSearchOuterDataResults> getBusData(){
return busData;
}
}
公共类收集的数据{
List busData=新的ArrayList();
公共总线搜索外部数据结果外部数据;
public void createNewOuterDataObject(){
outerData=新的BusSearchOuterDataResults();
this.outerData=outerData;
}
public void createNewInnerDataObject(){
createNewInnerDataObject();
}
public void addAllCollectedData(){
busData.add(outerData);
}
公共列表getBusData(){
返回总线数据;
}
}
为什么当我调用createNewOuterDataObject方法时,它不允许我创建一个新的方法?是不是因为我已经调用了createNewOuterDataObject的类obj而没有进行任何初始化
public class BusSearchOuterDataResults {
List<BusSearchInnerDataResults> innerData = new ArrayList<BusSearchInnerDataResults>();
private String routeNo;
private String routeLabel;
private String direction;
public BusSearchInnerDataResults innerDataOBJ = new BusSearchInnerDataResults();
public BusSearchOuterDataResults(String routeNo, String routeLabel, String direction){
this.routeNo = routeNo;
this.routeLabel = routeLabel;
this.direction = direction;
}
public BusSearchOuterDataResults(){
}
public void createNewInnerDataObject(){
BusSearchInnerDataResults innerDataOBJ = new BusSearchInnerDataResults();
this.innerDataOBJ = innerDataOBJ;
}
public void addAllCollectedData(){
innerData.add(new BusSearchInnerDataResults());
}
public void setRouteNo(String routeNo){
this.routeNo = routeNo;
}
public void setRouteLabel(String routeLabel){
this.routeLabel = routeLabel;
}
public void setDirection(String direction){
this.direction = direction;
}
public String getrouteNo(){
return routeNo;
}
public String getrouteLabel(){
return routeLabel;
}
public String getdirection(){
return direction;
}
public List<BusSearchInnerDataResults> getData(){
return innerData;
}
}
公共类BusSearchOuterDataResults{
List innerData=new ArrayList();
私有字符串路由;
私有字符串路由标签;
私有字符串方向;
public BusSearchInnerDataResults innerDataOBJ=新建BusSearchInnerDataResults();
public BusSearchOuterDataResults(字符串routeNo、字符串routeLabel、字符串方向){
this.routeNo=routeNo;
this.routeLabel=routeLabel;
这个方向=方向;
}
公共总线SearchOuterDataResults(){
}
public void createNewInnerDataObject(){
BusSearchInnerDataResults innerDataOBJ=新的BusSearchInnerDataResults();
this.innerDataOBJ=innerDataOBJ;
}
public void addAllCollectedData(){
添加(新的BusSearchInnerDataResults());
}
公共void setRouteNo(字符串routeNo){
this.routeNo=routeNo;
}
公共void setRouteLabel(字符串routeLabel){
this.routeLabel=routeLabel;
}
公共方向(字符串方向){
这个方向=方向;
}
公共字符串getrouteNo(){
返回routeNo;
}
公共字符串getrouteLabel(){
返回路由标签;
}
公共字符串getdirection(){
返回方向;
}
公共列表getData(){
返回内部数据;
}
}
您的代码不正确:
public void createNewOuterDataObject(){
outerData = new BusSearchOuterDataResults(); // here you are initializing your field
this.outerData = outerData; // but here ? what is this line for ?
}
第二行什么都不做,就像做
int x = 0 ;
x=x;
你说它不会让你创建一个新的是什么意思?在我的ADT eclipse中,我放了一些类似Lod.d(“初始化”,“等待”);createNewInnerDataObject();Lod.d(“成功”、“成功”);但是在初始化之后,成功日志从来没有出现过这意味着什么…?您应该将logcat筛选到错误日志,并向我们显示错误堆栈、引发了什么异常?我们需要在BusSearchOuterDataResults的构造函数中查看代码。看起来这在某种程度上是失败的,但从你目前发布的内容来看,原因并不明显。是的,但它不会抛出任何异常或导致任何其他问题。不要向我解释。把它加到你的答案里。解释为什么这是不正确的,或者更确切地说,为什么它可能不是OP需要的。@Tanis你不能用无用的行塞满你的代码并期望它正常工作,你必须编写一个清晰易懂的代码,然后尝试调试它,以防它抛出异常