小言_互联网的博客

java基础练习2

268人阅读  评论(0)

编写一个超市购物程序,实现超市购物功能。
超市、商品、仓库、购物者等之间存在的联系,在编程时可以按照符合人类思维习惯的编程思想来实现
类分析:
·超市类:包含超市名称、仓库以及商品销售活动

package Girl.bilibili;

public class Market {
   
    //超市名称
    private String marketName;
    //超市仓库
    private Product[] productArr;

    public Market(String marketName, Product[] productArr) {
   
        this.marketName = marketName;
        this.productArr = productArr;
    }
    //用于其他类得到本类的超市名称
    public String getMarketName() {
   
        return marketName;
    }
    //用于其他类修改本类的超市名称
    public void setMarketName(String marketName) {
   
        this.marketName = marketName;
    }
    //用于其他类得到本类的超市仓库货物
    public Product[] getProductArr() {
   
        return productArr;
    }
    //用于其他类修改本类的超市仓库货物
    public void setProductArr(Product[] productArr) {
   
        this.productArr = productArr;
    }
    //按照指定商品卖货
    public Product sell(String name) {
   
        for (int i = 0; i < productArr.length; i++) {
   
            if (productArr[i] != null && name.equals(productArr[i].getProName())) {
   
                return productArr[i];
            }
        }
        return null;
    }
}

·
商品类:包含商品名称

package Girl.bilibili;

public class Product {
   
    private String proName;

    public Product(String proName) {
   
        this.proName = proName;
    }

    public String getProName() {
   
        return proName;
    }

    public void setProName(String proName) {
   
        this.proName = proName;
    }
}

·购物者类:包含姓名及购物活动

package Girl.bilibili;

public class Person {
   
    private String name;

    public Person(String name) {
   
        this.name = name;
    }

    public String getName() {
   
        return name;
    }

    public void setName(String name) {
   
        this.name = name;
    }

    public Product shopping(Market market,String name) {
   
       //返回一个Product对象
        //需要从仓库中删除他
        //仓库中有可能没有回返回null应该考虑到防止空指针异常
        if (market.sell(name) == null) {
   
            System.out.println("未找到该物品");
            return null;
        } else {
   
            //此处可以用下面方法来进行仓库里面东西删除
//            Product a = market.sell(name);
            Product a = market.sell(name);
            System.out.println(a.getProName());
            return market.sell(name);
        }
    }

}

·测试类:在其main方法中,需要创建商品对象、超市对象以及人, 并使用这些对象中定义的方法实现购物程序。

 package Girl.bilibili;

public class Main {
   
    public static void main(String[] args) {
   
        //创建物品数组,为之后创建对象使用

        Product[] products = new Product[]{
   
                new Product("卫龙辣条"),
                new Product("小浣熊干脆面"),
                new Product("彩虹糖")
        };

        //创建超市
        Market market = new Market("didi",products);
        Person person = new Person("月月");
        person.shopping(market,"卫龙辣条");
    }
}

转载:https://blog.csdn.net/liang22471/article/details/115383929
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场