实验4.1 机动车
一、实验目的
本实验的目的是让学生使用类来封装对象的属性和功能。
三、实验要求
编写一个简单的Java应用程序,该程序有两个类:Vehicle(用于刻画机动车)和User(主类)。具体要求如下:
- Vehicle类有个double类型的变量speed,用于刻画机动车的速度,一个int型变量power,用于刻画机动车的功率。类中定义了speedUp(int s)方法,体现机动车有加速功能;定义了speedDown(int d)方法,体现机动车有减速功能;定义了setPower(int p)方法,用于设置机动车的功率;定义了getPower()方法,用于获取机动车的功率。机动车的UML图如图4.2所示。
- 在主类User的 main()方法中用Vehicle为创建对象,并让该对象调用方法设置功率,演示加速和减速功能。
四、程序效果示例
程序运行效果如图4.3所示。
图4.3 Vehicle类创建对象
运行结果如下:
五、程序模板
请按模板要求,将【代码】替换为Java程序代码。
【Vehicle.java】
public class Vehicle {
double speed;//声明double型变量speed,刻画速度
int power; //声明int型变量power,刻画功率
void speedUp(int s) {
speed = s+speed;//将参数s的值与成员变量speed的和赋值给成员变量speed
}
void speedDown(int d) {
speed= speed-d; //将成员变量speed与参数d的差赋值给成员变量speed
}
void setPower(int p) {
power = p; //将参数p的值赋值给成员变量power
}
int getPower() {
return power; //返回成员变量power的值
}
double getSpeed() {
return speed;
}
}
【User.java】
public class User {
public static void main(String args[]) {
Vehicle car1, car2;
car1 = new Vehicle(); //使用new运算符和默认的构造方法创建对象car1
car2 = new Vehicle();//使用new运算符和默认的构造方法创建对象car2
car1.setPower(128);
car2.setPower(76);
System.out.println("car1的功率是:"+car1.getPower());
System.out.println("car2的功率是:"+car2.getPower());
car1.speedUp(80);//car1调用speedUp()方法将自己的speed的值增加80
car2.speedUp(80);//car2调用speedUp()方法将自己的speed的值增加80
System.out.println("car1目前的速度:"+car1.getSpeed());
System.out.println("car2目前的速度:"+car2.getSpeed());
car1.speedDown(10);
car2.speedDown(20);
System.out.println("car1目前的速度:"+car1.getSpeed());
System.out.println("car2目前的速度:"+car2.getSpeed());
}
}
五、实验后的练习
(1)改进speedUp()方法,使得Vehicle类的对象在加速时不能将speed值超过200。
void speedUp(int s) {
if (s+speed > 200){
this.speed = 200;
}else {
this.speed = s+speed;
};//将参数s的值与成员变量speed的和赋值给成员变量speed
}
2. 改进speedDown()方法,使得Vehicle类的对象在减速时不能将speed值小于0。
(4)void speedDown(int d) {
if(speed-d < 0){
this.speed=0;
}
else {
this.speed= speed-d; //将成员变量speed与参数d的差赋值给成员变量speed
}
}
(3)增加一个刹车方法void brake(),Vehicle类的对象调用它能将speed的值变成0。
void brake(){
this.speed = 0;
}
调用brake:文章来源:https://www.toymoban.com/news/detail-410147.html
car1.brake();
System.out.println("car1目前的速度:"+car1.getSpeed());
结果如下:
文章来源地址https://www.toymoban.com/news/detail-410147.html
到了这里,关于Java实验--机动车的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!