阅读以下说明和 Java 代码,填补代码中的空缺,将解答填入答题纸的对应栏内。
【说明】
在股票交易中,股票代理根据客户发出的股票操作指示进行股票的买卖操作。其类图如图 6-1 所示。相应的Java 代码附后。
图6-1 类图
【 Java 代码】
import java.util.ArrayList;
import java.util.List;
class Stock {
private String name;
private int quantity;
public Stock(String name ,int quantity) {
this.name = name; this.quantity = quantity;
}
public void buy() { System.out.println("[ 买进]: " + name + ",数量:"
+ quantity);}
public void sell() { System.out.println("[ 卖出]: " + name + ",数量:"
+ quantity);}
}
interface Order {
void execute();
}
class BuyStock (1) Order {
private Stock stock;
public BuyStock(Stock stock) { (2) = stock; }
public void execute() { stock.buy();}
}
//类SellStock实现和BuyStock 类似,略
class Broker {
private List<Order> orderList = new ArrayList<Order>();
public void takeOrder( (3) order) { orderList.add(order); }
public void placeOrders() {
for ( (4) order : orderList) { order.execute(); }
orderList.clear();
}
}
public class StockCommand {
public static void main(String[] args) {
Stock aStock = new Stock("股票 A" ,10);
Stock bStock = new Stock("股票 B" ,20);
Order buyStockOrder = new BuyStock(aStock);
Order sellStockOrder = new SellStock(bStock );
Broker broker = new Broker();
broker.takeOrder(buyStockOrder);
broker.takeOrder(sellStockOrder);
broker. (5) ;
}
}