借用容器类实现网站购物程序的过程,封装商品类、购物车类,以及模拟购物的测试程序。java
时间: 2024-12-16 12:27:35 浏览: 5
在Java中,借用容器类如ArrayList或HashMap来实现网站购物程序的一个简单步骤如下:
1. **商品类** (Product):创建一个表示商品的基本类,包含属性如名称(name),价格(price),库存量(stock),并提供获取和设置这些属性的方法。可以考虑添加商品图片和描述等其他特性。
```java
public class Product {
private String name;
private double price;
private int stock;
// 构造函数,getter和setter方法
public Product(String name, double price, int stock) {
this.name = name;
this.price = price;
this.stock = stock;
}
// getter and setter methods...
}
```
2. **购物车类** (ShoppingCart):利用List(如ArrayList)作为底层数据结构,这个类负责存储商品列表,并提供添加商品(addItem), 删除商品(removeItem), 结算(cartTotal)等功能。
```java
import java.util.ArrayList;
public class ShoppingCart {
private ArrayList<Product> items;
public ShoppingCart() {
items = new ArrayList<>();
}
// 添加商品,删除商品,计算总价的方法
public void addItem(Product product) {
items.add(product);
}
public void removeItem(Product product) {
items.remove(product);
}
public double cartTotal() {
double total = 0;
for (Product item : items) {
total += item.getPrice();
}
return total;
}
}
```
3. **测试程序** (TestProgram): 创建一个测试类来演示如何使用上述两个类。这里可以初始化一些商品实例,添加到购物车,然后检查总价是否正确。
```java
public class TestProgram {
public static void main(String[] args) {
// 创建商品
Product apple = new Product("苹果", 5.0, 10);
Product banana = new Product("香蕉", 2.5, 20);
// 创建购物车并添加商品
ShoppingCart cart = new ShoppingCart();
cart.addItem(apple);
cart.addItem(banana);
// 测试
System.out.println("购物车总价: " + cart.cartTotal());
// 移除商品并再次测试
cart.removeItem(apple);
System.out.println("购物车去掉苹果后总价: " + cart.cartTotal());
}
}
```
在这个例子中,通过购物车类的多态性,我们可以方便地处理不同类型的商品,而无需修改购物车类本身。这就是多态在实际编程中的应用体现。
阅读全文