Java案例———超市购物系统(类的封装)

    xiaoxiao2025-08-14  6

    一、任务描述:

    购物时,如果购物者需要购买的商品在超市里有,则提示购物者买到了某商品

                   如果没有所需的商品,则提示白跑了一趟

     

     

    二、运行结果:

     

     

    三、实现思路

    1.包含了超市,商品,购物者三个对象

    2.定义商品类,有自己的名称属性

    3.定义超市类,有名称、

                              仓库,仓库里会有很多商品,因此用数组;

                             卖货的方法

    4.购物者是人,需要定义一个Person对象,有名称属性,购物的方法

    5.编写测试类,在main方法中,需要创建商品对象,超市对象,人,  并使用对象中的方法来实现购物程序

     

     

    四、实现代码:

    /** *@Title Product.java *@time 2019年5月28日 下午9:57:28 *@author wangyue *@version 1.0 *@description *商品类: *商品名称 */ package cn.ch03.task01; public class Product { private String proName; // 商品名字 一般成员变量是private public String getProName() { return proName; } public void setProName(String proName) { this.proName = proName; // this表示成员变量 } }

     

    /** *@Title Market.java *@time 2019年5月28日 下午10:03:18 *@author wangyue *@version 1.0 *@description *超市类: *超市名称 *仓库 *卖货的方法 */ package cn.ch03.task01; public class Market { private String marketName; // 超市名称 private Product[] marketArr; // 仓库 public String getMarketName() { return marketName; } public void setMarketName(String marketName) { this.marketName = marketName; } public Product[] getMarketArr() { return marketArr; } public void setMarketArr(Product[] marketArr) { this.marketArr = marketArr; } //重要!!! 为什么是保护类型? Product sellProduct(String name) { //超市卖货的方法 ,指定货物名 for(int i=0;i<marketArr.length;i++) { if(marketArr[i].getProName()==name){ return marketArr[i]; //将该商品返回! } } return null; } }

     

     

    /** *@Title Person.java *@time 2019年5月28日 下午10:14:21 *@author wangyue *@version 1.0 *@description TODO *购物者类: *人名 *购物方法 */ package cn.ch03.task01; public class Person { private String personName; //人名 public String getPersonName() { return personName; } public void setPersonName(String personName) { this.personName=personName; } //为什么是保护类型??? Product shopping(Market market,String name) { //购物方法 指定超市和货物 return market.sellProduct(name); } } /** *@Title Shopping.java *@time 2019年5月28日 下午10:19:11 *@author wangyue *@version 1.0 *@description *购物主函数 */ package cn.ch03.task01; public class Shopping { public static void main(String[] args) { // 创建商品对象,初始化 Product p1 = new Product(); Product p2 = new Product(); Product p3 = new Product(); p1.setProName("西瓜"); p2.setProName("油桃"); p3.setProName("香蕉"); // 创建超市对象 Market market = new Market(); market.setMarketName("大润发"); market.setMarketArr(new Product[] { p1, p2, p3 }); // 创建的同时 实例化 // 创建人 Person person = new Person(); person.setPersonName("苏大强"); //调用购物方法 Product res = person.shopping(market,"哈哈"); if (res != null) { System.out.println(person.getPersonName() + " 在 "+ market.getMarketName() + " 买到了 " + p1.getProName()); } else { System.out.println(person.getPersonName() + " 在 " + market.getMarketName() + " 什么也没买到"); } } }

     

    最新回复(0)