迷你项目练习题3遥控器播放CD DVD Tape

您所在的位置:网站首页 TapePLAYER表示什么 迷你项目练习题3遥控器播放CD DVD Tape

迷你项目练习题3遥控器播放CD DVD Tape

2024-04-19 07:07| 来源: 网络整理| 查看: 265

文章目录 题目 代码展示 接口MediaPlayer TapePlayer类 DVDPlayer类 CDPlayer类 Controller类 Test类 程序运行结果

题目

定义一个接口 MediaPlayer,表示家庭影院的一个设备。MediaPlayer 中 包含 play(),stop(), open()三个方法,分别表示播放、停止和开仓功能。 MediaPlayer 有三个实现类,分别为:DVDPlayer,表示 DVD 播放器;CDPlayer, 表示 CD 播放器;TapePlayer,表示录音机(播放磁带)。 类图如下: 在这里插入图片描述

创建一个遥控器 Controller 类。该遥控器有三个控制通道,可以分别控制三个 设备。部分代码如下: class Controller{ private MediaPlayer[] players; public Controller(){ //构造函数中初始化 players 数组 } //对相应的设备调用 play 方法 public void play(int i){ players[i].play(); } } 要求:

完成 MediaPlayer 接口及其子类的代码。 把 Controller 补充完整,完善其构造函数,并为其增加 stop(int i)和 open(int i)方法 代码展示 接口MediaPlayer public interface MediaPlayer { //播放 停止 开仓 void play(); void stop(); void open(); } TapePlayer类 public class TapePlayer implements MediaPlayer{ @Override public void play() { System.out.println("Tape开始播放"); } @Override public void stop() { System.out.println("Tape停止播放"); } @Override public void open() { System.out.println("Tape开仓"); } } DVDPlayer类 public class DVDPlayer implements MediaPlayer{ @Override public void play() { System.out.println("DVD开始播放"); } @Override public void stop() { System.out.println("DVD停止播放"); } @Override public void open() { System.out.println("DVD开仓"); } } CDPlayer类 public class CDPlayer implements MediaPlayer{ @Override public void play() { System.out.println("CD开始播放"); } @Override public void stop() { System.out.println("CD停止播放"); } @Override public void open() { System.out.println("CD开仓"); } } Controller类 public class Controller { private MediaPlayer[] players; //在Controller构造方法中初始化数组,添加三个元素 public Controller(){ players =new MediaPlayer[] { new TapePlayer(),new DVDPlayer(),new CDPlayer()}; } public void play(int i){ players[i].play(); } public void stop(int i){ players[i].stop(); } public void open(int i){ players[i].open(); } } Test类 public class Test { public static void main(String[] args) { Controller controller = new Controller(); controller.open(0); controller.play(0); controller.stop(0); controller.open(1); controller.play(1); controller.stop(1); controller.open(2); controller.play(2); controller.stop(2); } } 程序运行结果

在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3