gpt4 book ai didi

java - 访客设计模式-电子商务

转载 作者:行者123 更新时间:2023-11-30 07:14:11 28 4
gpt4 key购买 nike

我正在为大学考试编写一些 Java 代码,该项目基于“电子商务”。要求之一是将产品插入购物车,我必须使用 Visitor 模式。 example visitor

这是教授给我的一个例子,我必须“用”它来代表我的购物车。问题是我有一个 Product 类,其中包含 Category 类的实例,并且产品列表或类别列表存储在数据库中(我通过查询访问它们)每一步)。

现在,首先... book 是一个类别还是一个产品?例如,它可以与智能手机htc one m8进行比较吗?另外,我有一个类,其中包含客户端“使用”的所有代码。在那里,我没有任何 ShoppingCart 对象,只有一个与用户相关的简单产品数组

如何在我的项目中实现此模式?哪条路是?

提前谢谢您。

最佳答案

实际上非常简单,例如在您的主类中,如果用户添加了 2 个元素:

    int totalPrice = 0;
ShoppingCartVisitor cart = new ShoppingCartVisitorImpl();
ItemElement element1 = new Fruit(2,3,"Apple");
ItemElement element2 = new Book(30,"some ISBN number");
totalPrice += element1.accept(cart);
totalPrice += element2.accept(cart);

在 Fruit 和 book 中添加:

public void accept(ShoppingCartVisitor v) {
v.visit(this);
}

以及 ShoppingCartVisitorImpl 中:

public int visit(Book b) {
return b.getPrice();
}

public int visit(Fruit f) {
return f.getPricePerKg()*f.getWeight();
}

关于java - 访客设计模式-电子商务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38704975/

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