欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

电商系统的商品库存管理

程序员文章站 2022-04-14 21:37:05
...

基于数组+面向对象的商品信息管理系统

面向对象程序设计

完成一个电商系统的商品库存管理的系统

包含两个类:

    1. 商品类(编号,名称,类别,单价,库存量,生产地)
    1. 商品管理类

管理类中需完成功能:

    1. 商品添加
    1. 查询指定价格范围的商品并显示
    1. 根据编号查询商品信息并显示
    1. 根据编号修改商品的单价和库存
    1. 显示所有商品信息
    1. 查询所有库存量低于指定数的商品信息

功能实现原理

定义一个商品(product)类,定义商品的属性,包含编号(pno)、名称(pname)、类别(type)、单价(price)、库存量(stock)和生产地(place),生成构造器,set与get方法,并定义一个显示(details)方法。代码如下:

public class Product {
	
	private int pno;
	private String pname;
	private String type;
	private double price;
	private double stock; //库存
	private String place;
	
	public Product(int pno, String pname, String type, double price, double stock, String place) {
		super();
		this.pno = pno;
		this.pname = pname;
		this.type = type;
		this.price = price;
		this.stock = stock;
		this.place = place;
	}
	public int getPno() {
		return pno;
	}
	public void setPno(int pno) {
		this.pno = pno;
	}
	public String getPname() {
		return pname;
	}
	public void setPname(String pname) {
		this.pname = pname;
	}
	public String getType() {
		return type;
	}
	public void setType(String type) {
		this.type = type;
	}
	public double getPrice() {
		return price;
	}
	public void setPrice(double price) {
		this.price = price;
	}
	public double getStock() {
		return stock;
	}
	public void setStock(double stock) {
		this.stock = stock;
	}
	public String getPlace() {
		return place;
	}
	public void setPlace(String place) {
		this.place = place;
	}
	
	public void details() {
		System.out.println(pno + "\t" + pname + "\t" + type + "\t" + price + "\t" + stock + "\t" + place);
	}
}

定义一个商品管理类(ProductManager),实现商品添加,查询指定价格范围的商品并显示,根据编号查询商品信息并显示,根据编号修改商品的单价和库存,显示所有商品信息,查询所有库存量低于指定数的商品信息的功能,代码如下:

public class ProductManager {
	
	private Product[] list;
	private int index;
	
	public ProductManager() {
		list = new Product[100];
	}

	/**商品添加*/
	public void add(Product p) {
		list[index++] = p;
	}
	
	/**查询指定价格范围的商品并展示*/
	public void search(int price1,int price2) {
		for (int i = 0; i < list.length; i++) {
			Product p = list[i];
			if(p != null) {
			if(p.getPrice() >= price1 && p.getPrice() <= price2) {
				p.details();
			}
			}
		}
	}
	
	/**根据编号查询商品信息并显示*/
	public void findByPno(int pno) {
		for (int i = 0; i < list.length; i++) {
			Product p = list[i];
			if(p != null && p.getPno() == pno) {
				p.details();
			}
		}
		
	}
	
	/**根据编号修改商品的单价和内存*/
	public void alterByPno(int pno,double price,double stock) {
		for (int i = 0; i < list.length; i++) {
			Product p = list[i];
			if(p != null && p.getPno() == pno) {
				p.setPrice(price);
				p.setStock(stock);
				p.details();
			}
		}
	}
	
	/**显示所有商品信息*/
	public void showAll() {
		for (int i = 0; i < list.length; i++) {
			Product p = list[i];
			if(p != null ) {
				p.details();
			}
		}
	}
	
	/**查询所有库存量低于指定数的商品信息*/
	public void showLowStock(int stock) {
		for (int i = 0; i < list.length; i++) {
			Product p = list[i];
			if(p != null && p.getStock() < stock) {
				p.details();
			}
		}
	}
}

定义一个商品测试(ProductTest)类 ,并对功能的实现进行测试:

public class ProductTest {
	public static void main(String[] args) {
		
		ProductManager pm = new ProductManager();
		pm.add(new Product(001, "邹腰子", "补品", 39.9, 700, "荆州"));
		pm.add(new Product(002, "邹蹄子", "肉类", 60, 600, "洪湖"));
		pm.add(new Product(003, "邹耳朵", "凉菜", 39.9, 500, "孝感"));
		pm.add(new Product(004, "邹肉", "肉类", 25, 1000, "黄冈"));
		pm.add(new Product(005, "邹大肠", "特殊肉类", 18, 580, "襄阳"));
		
		System.out.println("查询指定价格范围内的商品==========");
		pm.search(30, 50);
		
		System.out.println("根据编号查询商品信息==============");
		pm.findByPno(005);
		
		System.out.println("根据编号修改商品单价和库存========");
		pm.alterByPno(001, 44.9, 900);
		
		System.out.println("显示所有商品信息=================");
		pm.showAll();
		
		System.out.println("查询所有库存量低于指定数的商品=====");
		pm.showLowStock(700);
	}
}

实现效果如下:
电商系统的商品库存管理