1
package org.jsoft.zouye;
public interface MediaPlayer {
//家庭影院的三个方法
public void play();
public void stop();
public void open();
}
2
package org.jsoft.zouye;
public class CDPlayer implements MediaPlayer{
@Override
public void play() {
// TODO Auto-generated method stub
System.out.println("CD播放器播放");
}
@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("CD播放器停止");
}
@Override
public void open() {
// TODO Auto-generated method stub
System.out.println("CD播放器开仓");
}
}
3
package org.jsoft.zouye;
public class DVDPlayer implements MediaPlayer{
//重写 三个方法
@Override
public void play() {
// TODO Auto-generated method stub
System.out.println("DVD播放器播放");
}
@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("DVD播放器停止");
}
@Override
public void open() {
// TODO Auto-generated method stub
System.out.println("DVD播放器开仓");
}
}
4
package org.jsoft.zouye;
public class TapePlayer implements MediaPlayer{
@Override
public void play() {
// TODO Auto-generated method stub
System.out.println("录音机(磁带)开始 ");
}
@Override
public void stop() {
// TODO Auto-generated method stub
System.out.println("录音机(磁带)停止");
}
@Override
public void open() {
// TODO Auto-generated method stub
System.out.println("录音机(磁带)开仓 ");
}
}
5
package org.jsoft.zouye;
import java.util.Scanner;
public class Controller {
//引用Media 的方法,并为其开辟空间
private MediaPlayer[] players=new MediaPlayer[3];
public Controller(){
//为数组的三个数分别赋予三个空间
players[0]=new DVDPlayer();
players[1]=new TapePlayer();
players[2]=new CDPlayer();
}
//public MediaPlayer[] getPlayers() {
// return players;
//}
//public void setPlayers(MediaPlayer[] players) {
// this.players = players;
//}
public void play(int i){
players[i].play();
}
public void stop(int j){
players[j].stop();
}
public void open(int o){
players[o].open();
}
public static void main(String []args){
Controller c=new Controller();
//DVDPlayer d=new DVDPlayer();
while(true){System.out.println("你选择哪个播放器");
Scanner sc=new Scanner(System.in);
int in=sc.nextInt();
if(in==1){
System.out.print("请问你要选择什么功能");
int inn=sc.nextInt();
if(inn==1){
c.open(1);
}
else if(inn==2){c.stop(1);}
else if(inn==3){c.play(1);}
}
else if(in==0){
System.out.print("请问你要选择什么功能");
int inn=sc.nextInt();
if(inn==1){c.open(0);}
else if(inn==2){c.stop(0);}
else if(inn==3){c.play(0);}
}
else if(in==2){
System.out.print("请问你要选择什么功能");
int inn=sc.nextInt();
if(inn==1){c.open(2);}
else if(inn==2){c.stop(2);}
else if(inn==3){c.play(2);}
}
else {
System.out.println("请重新输入 ");
}
}}
}
测试结果
你选择哪个播放器
2
请问你要选择什么功能1
CD播放器开仓
你选择哪个播放器
0
请问你要选择什么功能2
DVD播放器停止
你选择哪个播放器
8
请重新输入
你选择哪个播放器