本周是写一个简单的超市售货管理系统,目前只能统计商品价格总和和展示商品信息,总共写了三个类来完成此系统。
首先创建一个商品类。
public class Goods {
//创建一个商品类
private int num;
//num为商品编号
private String name;
//name为商品名
private double price;
//price为商品价格
public Goods() {
}
//空参建造一个新goods类
public Goods(int num, String name) {
this.num = num;
this.name = name;
}
//创造并赋给新goods类商品编号和商品名
public void setNum(int num) {
this.num = num;
}
//建立商品编号
public int getNum() {
return num;
}
//获取商品编号
public void setName(String name) {
this.name = name;
}
//建立商品名
public String getName() {
return name;
}
//获取商品名
public double getPrice() {
int Num = getNum();
switch (Num) {
//switch语句根据编号为商品价格赋值
case 001:
price = 20000;
break;
case 002:
price = 300000;
break;
default:
price = 150000;
}
return price;
//获取商品价格
}
public void inforshow() {
System.out.println("Goods num=" + getNum() + " name=" + getName() + " price=" + getPrice());
}
//展示商品编号,商品名,商品价格
}
然后创建一个售卖类。
public class GoodsShop {
private double money = 0;
//将money初始值设置为0
public void sellGoods(Goods goods) {
//建立一个商品销售类
double price = goods.getPrice();
//获取商品价格并赋值给price
this.money = money + price;
//将money与price叠加,得出总价格
}
public double getMoney() {
return money;
}
//获取总支付价格
}
最后写出测试代码
mport java.util.Scanner;
public class TestGoodsShop {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num1 = sc.nextInt();
//输入第一个商品的编号
String name1=sc.next();
//输入第一个商品的商品名
int num2 = sc.nextInt();
//输入第二个商品的编号
String name2=sc.next();
//输入第二个商品的商品名
GoodsShop goodsShop = new GoodsShop();
//建立一个新的商品销售类
Goods g1 = new Goods(num1, name1);
//根据输入的数据建立一个新的商品类g1
goodsShop.sellGoods(g1);
//调用商品销售类将g1销售出
Goods g2 = new Goods(num2, name2);
//根据输入的数据建立一个新的商品类g2
goodsShop.sellGoods(g2);
//调用商品销售类将g1销售出
g1.inforshow();
//展示g1商品的商品信息
g2.inforshow();
//展示g1商品的商品信息
double counMoney = goodsShop.getMoney();
//调用销售类用counMoney接受总价格
System.out.println("商品出售的价格是:" + counMoney);
//打印售出商品的总价格
}
}
总体来说,仍有许多不足,而且逻辑较为简单,之后会创造出一个更好的系统的。