設計實驗
有 3 個開關:a b c
有 3 個電燈:x y z
要求實現:
a 能控制 x
b 能控制 x, y
c 能 x
注意:1個燈泡可以被多個開關控制;1個開關可以同時控制多個燈泡
所謂“控制”:當開關操作時,當前燈泡的狀態發生翻轉。亮->滅 或 滅->亮
import java.util.*; class Light { private boolean state; // 燈的狀態。true: 亮 public String toString() { if(state) return "亮"; else return "滅"; } // 翻轉狀態 public void change() { state = !state; } } class Switch { //Light[] a = ... Vector v = new Vector(); public void addLight(Light x) { v.add(x); } // 按了一下開關 public void press() { for(int i=0; i