package cn.vscoder.experiment_2;

/**
 * * 任务2-1：定义商品类
 * * 目标：设计一个商品类，包含商品号、商品名、商品价格、生产商等基本属性，并定义自定义属性。
 * * 步骤：
 * * 1.声明商品类Product。
 * * 2.定义基本属性：商品号（String）、商品名（String）、商品价格（double）、生产商（String）。
 * * 3.添加自定义属性，如颜色（String）、尺寸（String）等。
 * * 4.提供至少两个构造方法，包括全参数构造方法和默认构造方法。
 * * 5.实现修改商品价格的方法setPrice(double price)。
 * * 6.根据需要定义其他方法，如设置颜色setColor(String color)等。
 * * 7.重写toString()方法，用于输出商品的完整信息。
 */

public class Product {

    private static int ID = 1001;

    private int product_id; // 商品号

    private String product_name; // 商品名

    private Double product_price; // 商品价格

    private String product_producer; // 生产商

    private String product_color; // 商品颜色

    private String product_weight; // 商品重量

    public Product() {
    }

    @Override
    public String toString() {
        return "Product Info{" +
                "商品号='" + product_id + '\'' +
                ", 商品名='" + product_name + '\'' +
                ", 商品价格=" + product_price +
                ", 生产商='" + product_producer + '\'' +
                ", 商品颜色='" + product_color + '\'' +
                ", 商品重量='" + product_weight + '\'';
    }


    public Product(String product_name, Double product_price, String product_producer, String product_color, String product_weight) {
        this.product_name = product_name;
        this.product_price = product_price;
        this.product_producer = product_producer;
        this.product_color = product_color;
        this.product_weight = product_weight;
        setProduct_id();
    }

    // id 自增
    private void setProduct_id() {
        this.product_id = ID++;
    }

    public int getProduct_id() {
        return product_id;
    }

    public String getProduct_name() {
        return product_name;
    }

    public Double getProduct_price() {
        return product_price;
    }

    public String getProduct_producer() {
        return product_producer;
    }

    public String getProduct_color() {
        return product_color;
    }

    public String getProduct_weight() {
        return product_weight;
    }


    public void setProduct_name(String product_name) {
        this.product_name = product_name;
    }

    public void setProduct_price(Double product_price) {
        this.product_price = product_price;
    }

    public void setProduct_producer(String product_producer) {
        this.product_producer = product_producer;
    }

    public void setProduct_color(String product_color) {
        this.product_color = product_color;
    }

    public void setProduct_weight(String product_weight) {
        this.product_weight = product_weight;
    }
}