java - 创建车辆程序
问题描述
现在我正在从我获得的 Java 电子书中做一些任务,不幸的是,我被卡住了。这个程序的主要思想是创建一个Vehicle类,它与一个测试程序一起可以增加、减少和打破当前的速度。
起始速度应为 0。我希望用户指定汽车应开到的速度(例如 90 公里/小时)。在达到速度(在这种情况下为 90)后,我希望程序询问用户是否要将速度降低到给定值,保持相同的速度,或者中断到 0。所有这些都应该在测试程序中完成,还是应该在 Vehicle 类中实现?
我应该从以下 UML 创建一个程序:https ://i.stack.imgur.com/01fgM.png
到目前为止,这是我的代码:
public class Vehicle {
int speed;
//Constructor
public Vehicle () {
this.speed = 0;
}
public void increaseSpeed (int differenceInc) {
this.speed += differenceInc;
}
public void decreaseSpeed (int differenceDec) {
this.speed -= differenceDec;
}
public void brake() {
}
public int getSpeed () {
return this.speed;
}
}
这是我的空测试课。
public class VehicleTest {
public static void main(String[] args) {
Vehicle golf = new Vehicle();
//Speed which should be accelerated to:
Vehicle myHybrid = new Vehicle();
System.out.println("You've hit the given speed. Do you want to stay at this speed, break, or decrease to another given speed?");
}
}
解决方案
好吧,首先,欢迎来到 Stack Overflow。
如果您想要一个方法接受参数(参数),那么您必须在 mehtod 声明中声明所述参数和参数的类型:
public void increaseSpeed (int augmentValue) {
this.speed += augmentValue;
}
您还在询问软件设计:“组件(车辆)用户或客户端是否应该能够设置 increaseSpeed 方法的增加值?” . 答案取决于所述组件的设计。如果您的方法将接受一个参数,那么该方法可能还应该验证输入值并建立前置和后置条件。
希望这可以帮助。
推荐阅读
- react-native - 滚动视图上的动画标题
- excel - 在自动填充空白值的宏上出现运行时错误 6
- c++ - SHGetKnownFolderItem - 在 Wow64 上失败
- ios - iOS PDFkit 无法将自定义属性添加到 pdf 文档
- vue.js - 如何阻止更漂亮地在 VS Code 中切换 vue 插值
- sql - Heroku PostgreSQL 按字母顺序按点在前
- javascript - Bootstrap 滑动盒
- xslt - 如何使用 XSL 从父节点复制所有子节点
- android - 如何在xamarin android中禁用左滑动并启用右滑动
- ios - 如何使用自动布局在对象之间创建间隙