如何设计一个超市收银类

设计一个Cashier类,负责收银管理,它的属性包含一个用于保存超市所有商品的双列集合HashMap类型的productMap(key为商品ID,value为商品对象),一个用于保存当前销售明细记录的列表集合salesList,在构造方法中,初始化这两个集合。

public class Cashier {

    private HashMap<Long, Product> productMap;
    private LinkedList<Sales> salesList;

    public Cashier() {
        productMap = new HashMap<>();
        salesList = new LinkedList();
    }

}

class Product{
    
}

class Sales {
    
}