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

某公司要开发名为”我爱购物狂”的购物网站,请使用面向对象的思想设计描述商品信息

程序员文章站 2022-06-10 14:45:41
...

一、练习题目
编写程序描述商品信息
二、问题描述
某公司要开发名为”我爱购物狂”的购物网站,请使用面向对象的思想设计描述商品信息
三、要求:
1、分析商品类别和商品详细信息的属性和方法,设计商品类别类和商品详细信息类
2、在商品详细信息类中通过属性描述该商品所属类别
3、设置属性的私有访问权限,通过公有的get,set方法实现对属性的访问
4、编写测试类,测试商品类别类和商品详细信息类的对象及相关方法(测试数据信息自定)
5、创建包info—存放商品类别类和商品详细信息类,创建test测试类

四、参考分析思路:
商品类别类:
属性:类别编号,类别名称
商品详细信息类:
属性:商品编号,商品名称,所属类别,商品数量(大于0),商品价格(大于0),
方法:盘点的方法,描述商品信息。内容包括商品名称,商品数量,商品价格,现在商品总价以及所属类别信息
五、代码参考:


package info;

public class GoodsType {

    //设置属性的私有访问权限
    private String typeNum;
    private String typeName;

    //通过公有的get,set方法实现对属性的访问
    public void setTypeNum(String typeNum){
        this.typeNum=typeNum;
    }
    public String getTypeNum(){
        return typeNum;
    }

    public void setTypeName(String typeName){
        this.typeName=typeName;
    }
    public String getTypeName(){
        return typeName;
    }


    //无参构造方法
    public GoodsType() {

    }
    //有参构造方法 实现属性赋值
    public GoodsType(String typeNum, String typeName) {
        this.typeNum = typeNum;
        this.typeName = typeName;
    }


}





package info;

public class GoodsInfor {
    //设置属性的私有访问权限
    private String goodsNum; //商品编号
    private String goodsName; //商品名称
    private GoodsType goodsTy; //所属类别 
    private int goodsCount; //商品数量
    private double goodsPrice; //商品价格


    //通过公有的get,set方法实现对属性的访问
    public String getGoodsNum() {
        return goodsNum;
    }
    public void setGoodsNum(String goodsNum) {
        this.goodsNum = goodsNum;
    }
    public String getGoodsName() {
        return goodsName;
    }
    public void setGoodsName(String goodsName) {
        this.goodsName = goodsName;
    }
    public GoodsType getGoodsTy() {
        return goodsTy;
    }
    public void setGt(GoodsType goodsTy) {
        this.goodsTy = goodsTy;
    }
    public int getGoodsCount() {
        return goodsCount;
    }
    public void setGoodsCount(int goodsCount) {
        if(goodsCount>0){
            this.goodsCount = goodsCount;   
        }else{
            System.out.println("库存数量异常,请联系管理员");
        }

    }
    public double getGoodsPrice() {
        return goodsPrice;
    }
    public void setGoodsPrice(double goodsPrice) {
        this.goodsPrice = goodsPrice;
    }


    //无参构造方法
    public GoodsInfor() {
    }
    //有参构造方法,实现属性赋值
    public GoodsInfor(String goodsName,GoodsType goodsTy, int goodsCount, double goodsPrice) {
        this.goodsName = goodsName;
        this.goodsTy =goodsTy;
        this.setGoodsCount(goodsCount);
        this.goodsPrice = goodsPrice;

    }

    //盘点的方法
    public void show(){
        System.out.println("商品名称:"+goodsName);
        System.out.println("所属类别:"+goodsTy.getTypeName());
        System.out.println("商品售价:"+goodsPrice);
        System.out.println("库存数量:"+goodsCount);
        System.out.println("商品总价:"+goodsPrice*goodsCount);      
    }

}





package info;



public class TestGoods {
    public static void main(String[] args) { 
        GoodsType gt = new GoodsType("","洗发水");
        GoodsInfor g1=new GoodsInfor("潘婷洗发水400ml",gt,16,40.5);
        g1.show();
        System.out.println("======================");
        GoodsInfor g2=new GoodsInfor("蜂花洗发水250ml",gt,0,0.0);
        g2.show();
    }
}


六、运行效果图:

某公司要开发名为”我爱购物狂”的购物网站,请使用面向对象的思想设计描述商品信息

相关标签: java封装