代码描述在一辆车上既可以使用BOSE音响,也可以使用Philips音响的场景。
代码描述在一辆车上既可以使用BOSE音响,也可以使用Philips音响的场景。
首先,我们需要定义一个音响接口(AudioSystem),包含播放音乐(playMusic)和停止播放(stopMusic)方法:
public interface AudioSystem {
void playMusic();
void stopMusic();
}
然后,我们可以分别实现BOSE音响和Philips音响,它们都实现了音响接口:
public class BoseAudioSystem implements AudioSystem {
@Override
public void playMusic() {
// 使用BOSE音响播放音乐
}
@Override
public void stopMusic() {
// 停止BOSE音响播放
}
}
public class PhilipsAudioSystem implements AudioSystem {
@Override
public void playMusic() {
// 使用Philips音响播放音乐
}
@Override
public void stopMusic() {
// 停止Philips音响播放
}
}
最后,在车辆类(Car)中添加一个音响对象(AudioSystem),并提供两个方法来更改音响类型:
public class Car {
private AudioSystem audioSystem;
public void setAudioSystem(AudioSystem audioSystem) {
this.audioSystem = audioSystem;
}
public void playMusic() {
audioSystem.playMusic();
}
public void stopMusic() {
audioSystem.stopMusic();
}
}
这样,在使用Car类时,我们只需要调用setAudioSystem方法来更改音响类型,然后使用playMusic和stopMusic方法就可以控制相应的音响播放或停止:
Car car = new Car();
car.setAudioSystem(new BoseAudioSystem());
car.playMusic();
car.stopMusic();
car.setAudioSystem(new PhilipsAudioSystem());
car.playMusic();
car.stopMusic();