将对象返回给方法

时间:2012-03-04 23:32:34

标签: java

如何调用retriveRoom方法并返回房间[connectedRoom]对象,并使用ROOMS CLASS中方法内的对象属性?任何帮助是极大的赞赏。它说它找不到system.out.println中的room.numLights ???

 //MASTERCONTROLPANEL CLASS

 public static Object retrieveRoom(int connectedRoom){
    connectedRoom -= 1;
    return rooms[connectedRoom];
    }


 //ROOMS CLASS
 public void roomHeatLoss(){
    //I am having problems with the line below//
    ***Object room***= MasterControlPanel.retrieveRoom(1);
     System.out.println("" + room.numLights);
}

3 个答案:

答案 0 :(得分:3)

尝试在调用方法之前更改方法以返回Room或强制转换Object。

要么:

public static Room retrieveRoom(int connectedRoom){
   return rooms[connectedRoom];
}

或者这个:

public void roomHeatLoss(){
    Room room = (Room)MasterControlPanel.retrieveRoom(1);
}

你没有说你的问题是什么。这将有助于我们找出建议的内容。

答案 1 :(得分:2)

为什么不简单地声明方法返回Room而不是Object?

 // public static Object retrieveRoom(int connectedRoom){
 public static Room retrieveRoom(int connectedRoom){
   connectedRoom -= 1;
   return rooms[connectedRoom];
 }

答案 2 :(得分:0)

没有问题 这是ROOM类。 {请提供详细信息} 无论如何 将检索到的对象转换为Room类。