2.基于面向对象编程思想,使用文本编辑器编写Java程序,定义Bicycle类,包括车轮数目、脚蹬等属性;定义动作行为,如刹车等。定义山地车、赛车等类,继承(extends) Bicycle 类,根据各子类的特征,新增相应属性和行为。实例化各自类的对象,输出相关信息。
时间: 2023-06-19 15:06:04 浏览: 64
好的,下面是Bicycle类的代码:
```java
public class Bicycle {
private int wheelNum; // 车轮数目
private int pedalNum; // 脚蹬数目
public Bicycle(int wheelNum, int pedalNum) {
this.wheelNum = wheelNum;
this.pedalNum = pedalNum;
}
public int getWheelNum() {
return wheelNum;
}
public void setWheelNum(int wheelNum) {
this.wheelNum = wheelNum;
}
public int getPedalNum() {
return pedalNum;
}
public void setPedalNum(int pedalNum) {
this.pedalNum = pedalNum;
}
public void brake() {
System.out.println("刹车");
}
}
```
接下来是MountainBike类和RaceBike类的代码:
```java
public class MountainBike extends Bicycle {
private String suspension; // 悬挂系统
public MountainBike(int wheelNum, int pedalNum, String suspension) {
super(wheelNum, pedalNum);
this.suspension = suspension;
}
public String getSuspension() {
return suspension;
}
public void setSuspension(String suspension) {
this.suspension = suspension;
}
public void climb() {
System.out.println("爬山");
}
}
public class RaceBike extends Bicycle {
private int maxSpeed; // 最大速度
public RaceBike(int wheelNum, int pedalNum, int maxSpeed) {
super(wheelNum, pedalNum);
this.maxSpeed = maxSpeed;
}
public int getMaxSpeed() {
return maxSpeed;
}
public void setMaxSpeed(int maxSpeed) {
this.maxSpeed = maxSpeed;
}
public void speedUp() {
System.out.println("加速");
}
}
```
最后,我们实例化各自类的对象,并输出相关信息:
```java
public class Main {
public static void main(String[] args) {
Bicycle bicycle = new Bicycle(2, 2);
MountainBike mountainBike = new MountainBike(2, 2, "前后悬挂");
RaceBike raceBike = new RaceBike(2, 2, 100);
System.out.println("自行车信息:");
System.out.println("车轮数目:" + bicycle.getWheelNum());
System.out.println("脚蹬数目:" + bicycle.getPedalNum());
bicycle.brake();
System.out.println("山地车信息:");
System.out.println("车轮数目:" + mountainBike.getWheelNum());
System.out.println("脚蹬数目:" + mountainBike.getPedalNum());
System.out.println("悬挂系统:" + mountainBike.getSuspension());
mountainBike.brake();
mountainBike.climb();
System.out.println("赛车信息:");
System.out.println("车轮数目:" + raceBike.getWheelNum());
System.out.println("脚蹬数目:" + raceBike.getPedalNum());
System.out.println("最大速度:" + raceBike.getMaxSpeed());
raceBike.brake();
raceBike.speedUp();
}
}
```
输出结果如下:
```
自行车信息:
车轮数目:2
脚蹬数目:2
刹车
山地车信息:
车轮数目:2
脚蹬数目:2
悬挂系统:前后悬挂
刹车
爬山
赛车信息:
车轮数目:2
脚蹬数目:2
最大速度:100
刹车
加速
```