class LightBulb {
public void turnOn() {
// Turn on the light
}
}
class Switch {
private LightBulb bulb;
public Switch(LightBulb bulb) {
this.bulb = bulb;
}
public void operate() {
// Turn on/off the light
bulb.turnOn();
}
}
interface Switchable {
void turnOn();
}
class LightBulb implements Switchable {
@Override
public void turnOn() {
// Turn on the light
}
}
class Fan implements Switchable {
@Override
public void turnOn() {
// Turn on the fan
}
}
class Switch {
private Switchable device;
public Switch(Switchable device) {
this.device = device;
}
public void operate() {
device.turnOn();
}
}