1、设计和实现一个播放器(Player)的接口,该接口能够播放声音(play),还能调节音量的大小(volume),如果传递参数为true,则增大音量,如果传递参数为false,则减小音量。接口的功能将由收音机(Radio)和手机(Mobilephone)两种设备来实现,实现方式用显示信息来模拟,如显示“打开收音机,选择播放节目并播放”“加大音量”等等。再设计一个测试类(TestPlayer)类,使用这些实现接口的声音设备(收音机和手机)。设计要求为当程序运行时,先询问用户想使用哪种设备,然后按照选择的设备播放和调节音量(此要求如果不会,可不做,直接分别测试两种设备)。 提示:选择设备需要调用字符串的比较方法equals方法,调用格式为:对象名.equals("字符串"),其功能是判断对象名引用的字符串是否是参数“字符串”。例如,对象名.equals("收音机"),判断对象是否是收音机。 2、设计一个名称为Vehicle的接口,在接口中添加两个带一个参数(钥匙)的方法start和stop。在两个名称分别为Bike和Bus的类中实现Vehicle接口,实现方式用显示信息来模拟,如显示“启动公交车行使”“打开自行车锁骑行”等等。设计一个名称为TestVehicle的测试类,在该测试类的main方法中,创建Bike和Bus对象,并调用start和stop方法测试其功能。 要求:⑴ 按题目要求编写Java程序。
时间: 2024-03-17 13:44:27 浏览: 18
1. Player接口的实现:
```java
public interface Player {
void play();
void volume(boolean increase);
}
```
Radio类实现Player接口:
```java
public class Radio implements Player {
@Override
public void play() {
System.out.println("打开收音机,选择播放节目并播放");
}
@Override
public void volume(boolean increase) {
if (increase) {
System.out.println("加大音量");
} else {
System.out.println("减小音量");
}
}
}
```
Mobilephone类实现Player接口:
```java
public class Mobilephone implements Player {
@Override
public void play() {
System.out.println("打开手机,选择播放音乐并播放");
}
@Override
public void volume(boolean increase) {
if (increase) {
System.out.println("增大音量");
} else {
System.out.println("减小音量");
}
}
}
```
TestPlayer类用于测试:
```java
import java.util.Scanner;
public class TestPlayer {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请选择设备:1.收音机 2.手机");
int choice = scanner.nextInt();
Player player;
if (choice == 1) {
player = new Radio();
} else {
player = new Mobilephone();
}
player.play();
System.out.println("是否增加音量?(true/false)");
boolean increase = scanner.nextBoolean();
player.volume(increase);
}
}
```
2. Vehicle接口的实现:
```java
public interface Vehicle {
void start(String key);
void stop(String key);
}
```
Bike类实现Vehicle接口:
```java
public class Bike implements Vehicle {
@Override
public void start(String key) {
System.out.println("打开自行车锁骑行");
}
@Override
public void stop(String key) {
System.out.println("锁上自行车并停止骑行");
}
}
```
Bus类实现Vehicle接口:
```java
public class Bus implements Vehicle {
@Override
public void start(String key) {
System.out.println("启动公交车行使");
}
@Override
public void stop(String key) {
System.out.println("停止公交车行使并熄火");
}
}
```
TestVehicle类用于测试:
```java
public class TestVehicle {
public static void main(String[] args) {
Bike bike = new Bike();
Bus bus = new Bus();
bike.start("自行车钥匙");
bike.stop("自行车钥匙");
bus.start("公交车钥匙");
bus.stop("公交车钥匙");
}
}
```