1. 【继承】 设计一个交通工具类 Vehicle,属性(成员变量)包括速度 speed, 颜色color,成员方法包括:设置颜色的setColor( ),取得颜色的getColor( )。 再设计它的子类Car继承Vehicle,增加属性 passenger 表示可乘坐人数,添加方法getMaxSpeed( )取得最大速度(这里简单处理直接return 350)。 并编写如下图形界面:当点击设置颜色按钮时将由car对象调用setColor方法把color设为红色;当点击查看颜色按钮时将由car对象调用getColor( )方法,读取颜色并显示在右边。当点击查看速度按钮时将由car对象调用getMaxSpeed( )方法,读取速度并显示在右边。 提示:需在窗口类里声明一个car类对象作为其成员,并在构造方法里创建它。
理解问题1. 【继承】 设计一个交通工具类 Vehicle,属性(成员变量)包括速度 speed, 颜色color,成员方法包括:设置颜色的setColor( ),取得颜色的getColor( )。 再设计它的子类Car继承Vehicle,增加属性 passenger 表示可乘坐人数,添加方法getMaxSpeed( )取得最大速度(这里简单处理直接return 350)。 并编写如下图形界面:当点击设置颜色按钮时将由car对象调用setColor方法把color设为红色;当点击查看颜色按钮时将由car对象调用getColor( )方法,读取颜色并显示在右边。当点击查看速度按钮时将由car对象调用getMaxSpeed( )方法,读取速度并显示在右边。 提示:需在窗口类里声明一个car类对象作为其成员,并在构造方法里创建它。
已完成理解「1. 【继承】 设计一个交通工具类 Vehicle,属性(成员变量)包括速度 speed, 颜色color,成员方法包括:设置颜色的setColor( ),取得颜色的getColor( )。 再设计它的子类Car继承Vehicle,增加属性 passenger 表示可乘坐人数,添加方法getMaxSpeed( )取得最大速度(这里简单处理直接return 350)。 并编写如下图形界面:当点击设置颜色按钮时将由car对象调用setColor方法把color设为红色;当点击查看颜色按钮时将由car对象调用getColor( )方法,读取颜色并显示在右边。当点击查看速度按钮时将由car对象调用getMaxSpeed( )方法,读取速度并显示在右边。 提示:需在窗口类里声明一个car类对象作为其成员,并在构造方法里创建它。」
展开阅读网页
根据您的要求,我们需要设计一个交通工具类 Vehicle
和它的子类 Car
,并且实现一个简单的图形用户界面(GUI)来与这些类交互。以下是设计的基本步骤和代码示例:
1. 设计 Vehicle
类
Vehicle
类将包含速度 speed
和颜色 color
两个属性,以及设置和获取颜色的方法。
public class Vehicle {
private double speed; // 速度
private String color; // 颜色
// 设置颜色的方法
public void setColor(String color) {
this.color = color;
}
// 获取颜色的方法
public String getColor() {
return this.color;
}
// 可以添加其他必要的方法,例如设置速度等
}
2. 设计 Car
类继承自 Vehicle
Car
类将继承 Vehicle
类,并增加一个表示可乘坐人数的属性 passenger
,同时添加一个方法 getMaxSpeed()
来获取最大速度。
public class Car extends Vehicle {
private int passenger; // 可乘坐人数
// Car 类的构造方法
public Car() {
// 初始化 Car 对象时可以设置默认值
this.passenger = 4; // 假设默认是4人座
}
// 获取最大速度的方法
public double getMaxSpeed() {
return 350; // 简单处理,直接返回350
}
// 可以添加其他必要的方法,例如设置和获取乘客数量等
}
3. 实现图形用户界面(GUI)
图形用户界面将包含按钮,用于设置颜色、查看颜色和查看最大速度。这里使用简单的Java Swing组件来实现。
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class VehicleGUI extends JFrame {
private Car car; // Car 类的对象
private JButton setColorButton, getColorButton, getMaxSpeedButton;
private JLabel colorLabel, speedLabel;
public VehicleGUI() {
car = new Car(); // 创建 Car 对象
// 设置窗口属性
setTitle("Vehicle GUI");
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
// 创建按钮和标签
setColorButton = new JButton("设置颜色");
getColorButton = new JButton("查看颜色");
getMaxSpeedButton = new JButton("查看最大速度");
colorLabel = new JLabel("颜色: ");
speedLabel = new JLabel("最大速度: ");
// 为按钮添加事件监听器
setColorButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
car.setColor("红色"); // 设置颜色为红色
colorLabel.setText("颜色: 红色");
}
});
getColorButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String color = car.getColor(); // 获取颜色
colorLabel.setText("颜色: " + color);
}
});
getMaxSpeedButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
double maxSpeed = car.getMaxSpeed(); // 获取最大速度
speedLabel.setText("最大速度: " + maxSpeed);
}
});
// 添加组件到窗口
add(setColorButton);
add(getColorButton);
add(getMaxSpeedButton);
add(colorLabel);
add(speedLabel);
// 显示窗口
setVisible(true);
}
public static void main(String[] args) {
new VehicleGUI(); // 创建并显示 GUI
}
}
这段代码创建了一个简单的窗口,其中包含三个按钮,分别用于设置颜色、获取颜色和获取最大速度。每个按钮都与一个事件监听器关联,当按钮被点击时,相应的方法将被调用,并更新标签以显示结果。123457910