【设计模式_实验①_第六题】设计模式——接口的实验&模拟应用实验作业一

【实验要求】 货车要装载一批货物,货物由三种商品组成:电视、计算机和洗衣机。卡车需要计算出整批货物的重量。

【实验步骤】UML

过程

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

在这里插入代码片

public interface ComputerWeight {
    public abstract double computerWeight();
}
public class Truck {
    ComputerWeight  [] goods;
    double totalWeight=0;

    public Truck(ComputerWeight[] cw) {
        this.goods = cw;
    }

    public void setGoods(ComputerWeight [] goods){
        this.goods = goods;
    }
    public double getTotalWeight(){
        for (int i= 0;i<goods.length;i++){
            totalWeight+=goods[i].computerWeight();
        }
        return totalWeight;
    }

}
public class Television implements ComputerWeight{
    /**
     *  tv
     * @return
     */
    @Override
    public double computerWeight() {
        return 2;
    }
}
 * @Version 1.0
 */

public class WashMachine implements ComputerWeight{

    @Override
    public double computerWeight() {
        return 5;
    }
}

* * @Date 2023/10/1 22:23
 * @Version 1.0
 */

public class Computer implements ComputerWeight{
    @Override
    public double computerWeight() {
        return 3;
    }
}

public class TruckMain {
    public static void main(String[] args) {
        // one
        ComputerWeight[] goods = new ComputerWeight[650];
        // another
        ComputerWeight[] goods2 = new ComputerWeight[68];
        // truck
        Truck truck1 = new Truck(goods);
        // truck2
        Truck truck2 = new Truck(goods2);
        //one
        for (int i = 0; i < goods.length; i++) {
            if (0 == i % 3) {
                goods[i] = new Television();
            } else if (1 == i % 3) {
                goods[i] = new Computer();
            } else if (2 == i % 3) {
                goods[i] = new WashMachine();
            }
        }
        // two 2
        for (int j = 0; j < goods2.length; j++) {
            if (0 == j % 2) {
                goods2[j] = new Television();
            } else {
                goods2[j] = new WashMachine();
            }
        }
        truck1.setGoods(goods);
        truck2.setGoods(goods2);
        // 1
        System.out.println("第一辆货车的装载量:"+truck1.getTotalWeight()+"kg");
        // 2
        System.out.println("第er辆货车的装载量:"+truck2.getTotalWeight()+"kg");


    }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拾贰_C

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值