Java复习15(PTA)

卡车载重

分数 20

全屏浏览

切换布局

作者 clk

单位 浙江工商大学杭州商学院

某大型家电企业拥有一批送货卡车,运送电视机、空调、洗衣机等家电。编程计算每个卡车所装载货物的总重量。

要求如下:

1.创建一个ComputeWeight接口,接口中有方法:double computeWeight();

2.创建三个类Television、AirConditioner和WashMachine。这些类都实现了ComputeWeight接口,能够提供自重。其中TV的自重为16.6kg,AirConditioner的自重为40.0kg,WashMachine的自重为60.0kg。

3.创建一个Truck类,私有成员变量goods是一个ComputeWeight型的数组,包含了该货车上的所有家电,公有方法getTotalWeight()返回goods中所有货物的重量之和。

输入格式:

家电数量

家电种类编号

注意:各个家电的编号为:Television:1 , AirConditioner:2 , WashMachine:3

裁判测试程序样例:

在这里给出函数被调用进行测试的例子。例如:

public class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int n=input.nextInt();
        int type;
        ComputeWeight [] goods=new ComputeWeight[n]; //n件货物
        for(int i=0;i<goods.length ;i++){             
            type=input.nextInt();                    //读入家电类型
            if (type==1)                                
                goods[i]=new Television();
            else if (type==2)
                goods[i]=new AirConditioner();
            else if (type==3)
                goods[i]=new WashMachine();
        }
        Truck truck =new Truck(goods);
        System.out.printf("货车装载的货物总量:%8.2f kg",truck.getTotalWeight());
    }
}
/* 请在这里填写答案 */

输入样例:

在这里给出一组输入。例如:

10
1 2 3 3 2 1 3 3 3 2

输出样例:

在这里给出相应的输出。例如:

货车装载的货物总量:  453.20 kg

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

interface ComputeWeight {
    double computeWeight();
}

class Television implements ComputeWeight {

    @Override
    public double computeWeight() {
        return 16.6;
    }
}

class AirConditioner implements ComputeWeight {

    @Override
    public double computeWeight() {
        return 40.0;
    }
}

class WashMachine implements ComputeWeight {

    @Override
    public double computeWeight() {
        return 60.0;
    }
}

class Truck {
    ComputeWeight[] goods;

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

    double getTotalWeight() {
        double sum = 0;
        for (ComputeWeight good : goods) {
            sum += good.computeWeight();
        }
        return sum;
    }

}

包与接口实验报告 实验 包与接口 【实验目的】 1. 了解Java 中包(package)、接口(interface)的作用。 2. 掌握包、接口设计方法。 【实验要求】 1. 了解Java 系统包的结构。 2. 掌握创建自定义包的方法。 3. 掌握使用系统接口的技术和创建自定义接口的方法。 【实验步骤】 一.了解并使用Java 的系统包 1. API 包、接口、异常处理的作用 包是类和接口的集合。利用包可以把常用的类或功能相似的类放在一个包中。Java 语言提供系统包,其中包含了大量的类,可以在编写Java 程序时直接引用它们。为便于管理和使用它们,将这些类分为了不同的包。包又称类库或API 包,所谓API(Application Program Interface)即应用程序接口。API 包—方面提供丰富的类与方法供大家使用,如画图形、播放声音等,另一方面又负责和系统软硬件打交道,圆满实现用户程序的功能。所有Java API 包都以“java.”开头,以区别用户创建的包。 常见Java系统包及其作用: 1)语言(java.lang):提供的支持包括字符串处理、多线程处理、异常处理、数学函数处理等,可以用它简单地实现Java程序的运行平台。 2)实用程序包(java.util):提供的支持包括哈希表、堆栈、可变数组、时间和日期等。 输入输出包(java.io):用统一的流模型来实现所有格式的I/O,包括文件系统、网络、输入。 3)网络包(java.net):支持Internet的TCP/IP协议,用于实现Socket编程;提供了与Internet的接口,支持URL连接,WWW的即时访问,并且简化了用户/服务器模型的程序设计。 4)抽象图形用户接口包(javax.swing):实现了不同平台的计算机的图形用户接口部件,包括窗口、菜单、滚动条、对话框等,使得 Java可以移植到不同的平台。 接口解决了Java 不支持多重继承的问题,可以通过实现多个接口达到与多重继承相同的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值