gpt4 book ai didi

java - 如何实现返回 "enumeration"对象的函数?

转载 作者:行者123 更新时间:2023-12-02 10:02:56 27 4
gpt4 key购买 nike

我正在开发一个关于使用 Java 的设计模式的项目。链接中提供了使用设计模式之前的类图。由于我是 Java 新手,一些类方法的描述对我来说不明确。

例如,在一个名为 Mall 的类中,它有一个方法 stores(),该方法 stores() 被抽象地描述为返回一个商场中商店的“枚举”(我在示例代码中使用 Java 数组作为占位符)。

我想知道 Java 中的“枚举”是什么,即我应该使用什么来表示具体的返回类型?在这种特殊情况下,我们希望使用迭代器设计模式。如果可能,请提供示例。

https://www.dropbox.com/s/kbug0ow3e14284b/DP_Project_1182.pdf?dl=0

public class Mall {
private String mallId;
private Store[] Stores;
private Customer[] customers;

public void enter(Customer c){}
public void exit(Customer C){}
public ShoppingCart getShopingCart()
{
return new ShoppingCart();
}
public Customer[] customers()
{

}
public Store[] stores()
{
}
void addStore(Store S)
{

}
}

最佳答案

您需要根据您的目标创建一个名为 Store 的抽象类。为了返回迭代器类型的枚举,我创建了一个列表并将其元素作为迭代器返回。

我希望这个例子有帮助:

public abstract class Store {
private String name;
private Item items;
//..other items
}
public class Mall {
private Store myStore;
//Vector which Stores all Store objects
private List<Store> listOfStores=new LinkedList();
//stores method which returns an Enumeration of Stores*/
public Iterator<Store> stores(){
return listOfStores.iterator();
}
public void addStore(Store s){
listOfStores.add(s);
}
}

关于java - 如何实现返回 "enumeration"对象的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55503041/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com