代码部分
package D6;
public class test {
public static void main(String[] args) {
// TODO 自动生成的方法存根
Computer c=new Computer();
IO io=new IO();
c.add(io.new KeyBoard());
c.add(io.new Mouse());
c.powerOn();
System.out.println();
c.powerOff();
}
// TODO 自动生成的方法存根
Computer c=new Computer();
IO io=new IO();
c.add(io.new KeyBoard());
c.add(io.new Mouse());
c.powerOn();
System.out.println();
c.powerOff();
}
}
package D6;
public class IO {
public class Mouse implements USB{
public class Mouse implements USB{
@Override
public void turnOn() {
// TODO 自动生成的方法存根
System.out.println("鼠标打开了");
}
public void turnOn() {
// TODO 自动生成的方法存根
System.out.println("鼠标打开了");
}
@Override
public void turnOff() {
// TODO 自动生成的方法存根
System.out.println("鼠标关闭了");
}
}
public class KeyBoard implements USB{
public void turnOff() {
// TODO 自动生成的方法存根
System.out.println("鼠标关闭了");
}
}
public class KeyBoard implements USB{
@Override
public void turnOn() {
// TODO 自动生成的方法存根
System.out.println("键盘打开了");
}
public void turnOn() {
// TODO 自动生成的方法存根
System.out.println("键盘打开了");
}
@Override
public void turnOff() {
// TODO 自动生成的方法存根
System.out.println("键盘关闭了");
}
}
public class Mic implements USB{
public void turnOff() {
// TODO 自动生成的方法存根
System.out.println("键盘关闭了");
}
}
public class Mic implements USB{
@Override
public void turnOn() {
// TODO 自动生成的方法存根
System.out.println("话筒打开了");
}
public void turnOn() {
// TODO 自动生成的方法存根
System.out.println("话筒打开了");
}
@Override
public void turnOff() {
// TODO 自动生成的方法存根
System.out.println("话筒关闭了");
}
}
public void turnOff() {
// TODO 自动生成的方法存根
System.out.println("话筒关闭了");
}
}
}
package D6;
public class Computer {
//计算机上的USB插槽
private USB[] usbs=new USB[4];
//向计算机连接USB设备
public void add(USB usb) {
//遍历所有插槽
for (int i = 0; i < usbs.length; i++) {
//如果检测到接口无用就连接
if (usbs[i]==null) {
usbs[i]=usb;
break;
}
}
}
//计算机开机
public void powerOn() {
//遍历插槽
for (USB usb : usbs) {
if (usb!=null) {
usb.turnOn();
}
}
System.out.println("计算机开机了");
}
public void powerOff(){
for (USB usb : usbs) {
if (usb!=null) {
usb.turnOff();
}
}
System.out.println("计算机关机了");
}
}
//计算机上的USB插槽
private USB[] usbs=new USB[4];
//向计算机连接USB设备
public void add(USB usb) {
//遍历所有插槽
for (int i = 0; i < usbs.length; i++) {
//如果检测到接口无用就连接
if (usbs[i]==null) {
usbs[i]=usb;
break;
}
}
}
//计算机开机
public void powerOn() {
//遍历插槽
for (USB usb : usbs) {
if (usb!=null) {
usb.turnOn();
}
}
System.out.println("计算机开机了");
}
public void powerOff(){
for (USB usb : usbs) {
if (usb!=null) {
usb.turnOff();
}
}
System.out.println("计算机关机了");
}
}
package D6;
interface USB {
void turnOn();
void turnOff();
}
void turnOn();
void turnOff();
}