%ddd 2024-03-31 22:04 采纳率: 86.7%
浏览 11
已结题

程序填空Java求解

程序填空。请思考在横线处可填入什么代码以便达到以下目的。提交答案时请标明每空序号。


‎(1)构造一个Vehicle类表示交通工具,包含如下成员:


‎①私有的int类型成员变量speed,表示当前时速(单位为公里/小时,不能是负数)。


‎②带一个int型参数的构造方法,参数的值用来初始化当前时速(如果参数小于0,则将当前时速设为0)。


‎③为speed添加getter()和setter()方法。注意setSpeed(int speed)方法的参数小于0时,将当前时速设为0。


‎(2)构造一个Car类表示汽车,该类继承自Vehicle类,包含如下成员:


‎①私有的double类型成员变量distance,表示汽车的已行驶里程;


‎②带一个int型参数的构造方法,参数的值用来初始化speed,distance设为0。


‎③带一个double型参数的构造方法,参数的值用来初始化distance,speed设为0。


‎④带一个int型和一个double型参数的构造方法,两个参数的值分别用来初始化speed和distance。


‎⑤public void increaseSpeed (int differenceInc)方法,能将汽车的当前时速增加differenceInc。


‎⑥public void decreaseSpeed (int differenceDec)方法,能将汽车的当前时速降低differenceDec(注意汽车的当前时速不能小于0)。


‎⑦public void brake()方法,能将汽车的当前时速设为0。


‎⑧public void driving(int minutes) 方法,能让汽车以当前时速行驶minutes分钟,然后将行驶距离累加到distance(注意:如果当前时速为0,应提示“当前时速为0,请先加速”)。


‎⑨public String toString()方法,能根据汽车的数据生成并返回一个字符串,形式为:“Car{当前时速=,总行驶距离=}”。


‎(3)测试运行时,


‎若输入:100 10.5


‎则输出:


‎Car{当前时速=100,总行驶距离=60.5}


‎Car{当前时速=20,总行驶距离=70.5}


‎Car{当前时速=70,总行驶距离=105.5}


‎当前时速为0,请先加速

  • 写回答

3条回答 默认 最新

  • 码农阿豪@新空间代码工作室 Java领域优质创作者 2024-03-31 22:05
    关注
    让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
    (1)
    public class Vehicle {
        private int speed;
        public Vehicle(int speed) {
            setSpeed(speed);
        }
        public int getSpeed() {
            return speed;
        }
        public void setSpeed(int speed) {
            if (speed < 0) {
                this.speed = 0;
            } else {
                this.speed = speed;
            }
        }
    }
    

    (2)

    public class Car extends Vehicle {
        private double distance;
        public Car(int speed) {
            super(speed);
            distance = 0;
        }
        public Car(double distance) {
            super(0);
            this.distance = distance;
        }
        public Car(int speed, double distance) {
            super(speed);
            this.distance = distance;
        }
        public void increaseSpeed(int differenceInc) {
            setSpeed(getSpeed() + differenceInc);
        }
        public void decreaseSpeed(int differenceDec) {
            int newSpeed = getSpeed() - differenceDec;
            if (newSpeed < 0) {
                setSpeed(0);
            } else {
                setSpeed(newSpeed);
            }
        }
        public void brake() {
            setSpeed(0);
        }
        public void driving(int minutes) {
            if (getSpeed() == 0) {
                System.out.println("当前时速为0,请先加速");
                return;
            }
            double distance = 1.0 * getSpeed() * minutes / 60;
            this.distance += distance;
        }
        @Override
        public String toString() {
            return "Car{当前时速=" + getSpeed() + ",总行驶距离=" + distance + "}";
        }
    }
    

    (3)

    import java.util.Scanner;
    public class TestCar {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            int speed = scanner.nextInt();
            double distance = scanner.nextDouble();
            Car car1 = new Car(speed);
            System.out.println(car1);
            car1.driving(10);
            System.out.println(car1);
            car1.increaseSpeed(50);
            car1.driving(15);
            System.out.println(car1);
            car1.brake();
            System.out.println(car1);
            Car car2 = new Car(distance);
            System.out.println(car2);
            car2.increaseSpeed(20);
            car2.driving(25);
            System.out.println(car2);
            Car car3 = new Car(speed, distance);
            System.out.println(car3);
            car3.decreaseSpeed(30);
            car3.driving(20);
            System.out.println(car3);
            car3.driving(10);
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月22日
  • 已采纳回答 4月14日
  • 创建了问题 3月31日

悬赏问题

  • ¥15 from seleniumwire import webdriver 在抓取http://链接的时候会自动转https://这个怎么解决
  • ¥15 BAT根据上两级文件夹重新命名文件要求BAT
  • ¥30 不会,学习,有偿解答
  • ¥15 SQL查询语句报错(检查)
  • ¥15 此表中公式应该怎么写
  • ¥15 求HI-TECH PICC 9.50 PL3安装包
  • ¥15 下载ctorch报错,求解
  • ¥15 如何入门学习c语言,单片机
  • ¥15 idea 编辑语言的选择
  • ¥15 Windows下部署Asmjit