关于java面向对象问题

来源:百度知道 编辑:UC知道 时间:2024/06/08 04:19:57
(1)定义一个机器类(Machine.java),该类中有如下私有属性:机器编号(name),机器价格(Price)。
(2)定义一个机房类(MachineRoom.java),该类中有如下私有属性:机器数量(num),机器(Machine)。
(3)写一个测试类,该类中写一个方法(getAllPrice),该方法输入为一个机房对象,返回值是机房中所有机器的价格。并在该类中调用该方法进行测试。

说的并不是很清楚,你的说法给我感觉似乎是每个机房里只有一种机型,但是这在现实中并不一定,所以我想以我的想法给出我的程序。
Machine类
public class Machine {
private String name;
private double price;
Machine(String s , double p){
name = s;
price = p;
}
public String GetName(){
return name;
}
public double GetPrice(){
return price;
}
}
MachineRoom类
import java.util.*;
public class MachineRoom {
private int num;
private Map<String , Integer> m = new TreeMap<String , Integer>();//用来存储机房内所有机器的名字和数量
private List<Machine> l = new ArrayList<Machine>();//用来存储机房内所有机器的种类
private int flag = 0;
MachineRoom(int num , Machine... M){
this.num = num;
for(Machine mm : M){
m.put(mm.GetName(), 0);
l.add(mm);
}
}//构造函数,设置机房总的机器数量,和所有的机器种类
public Map<String , Integer> GetMachineRoomMap(){
return m;
}
public List<Machine> GetMachin