购物时,如果购物者需要购买的商品在超市里有,则提示购物者买到了某商品
如果没有所需的商品,则提示白跑了一趟
1.包含了超市,商品,购物者三个对象
2.定义商品类,有自己的名称属性
3.定义超市类,有名称、
仓库,仓库里会有很多商品,因此用数组;
卖货的方法
4.购物者是人,需要定义一个Person对象,有名称属性,购物的方法
5.编写测试类,在main方法中,需要创建商品对象,超市对象,人, 并使用对象中的方法来实现购物程序
/** *@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() + " 什么也没买到"); } } }