编写一个USB接口程序,模拟描述中的计算机的开机和关机过程。在计算机启动时,这些设备也随之关闭。鼠标、键盘、麦克风等USB接口设备都启动后,计算机才开机成功;当这些USB设备都关闭后,计算机才关机成功。类图如下,Computer与USB之间是组合关系。其中,Computer类:add(USB)方法表示增加USB设备。USB接口:turnOn()方法表示设备启动,turnOff()表示设备关闭。
源代码:
package main;
public class Computer {
USB usbArr[]=new USB[5];
int usbnumber=0;
void add(USB usb)
{
usbArr[usbnumber]=usb;
usbnumber++;
}
void poweron()
{
for(int i=0;i<usbnumber;i++)
{
this.usbArr[i].turnon();
}
}
void poweroff()
{
for(int i=0;i<usbnumber;i++)
{
this.usbArr[i].turnoff();
}
}
public static void main(String[] args)
{
Computer lianxiang=new Computer();
lianxiang.add(new Mouse());
lianxiang.add(new KeyBoard());
lianxiang.add(new Mic());
lianxiang.poweron();
lianxiang.poweroff();
}
}
interface USB{
void turnon();
void turnoff();
}
class Mouse extends Computer implements USB
{
public void turnon()
{
System.out.println("鼠标开启!");
}
public void turnoff()
{
System.out.println("鼠标关闭!");
}
}
class KeyBoard extends Computer implements USB
{
public void turnon()
{
System.out.println("键盘开启!");
}
public void turnoff()
{
System.out.println("键盘关闭!");
}
}
class Mic extends Computer implements USB
{
public void turnon()
{
System.out.println("存储卡开启!");
}
public void turnoff()
{
System.out.println("存储卡关闭!");
}
}
运行结果截图: