30 lines
994 B
Java
30 lines
994 B
Java
package bridge;
|
|
|
|
/**
|
|
* Concrete Implementor — a television.
|
|
* Contains device-specific logic for a TV.
|
|
*/
|
|
public class TV implements Device {
|
|
|
|
private boolean on = false;
|
|
private int volume = 30;
|
|
private int channel = 1;
|
|
|
|
@Override public boolean isEnabled() { return on; }
|
|
@Override public void enable() { on = true; System.out.println(" [TV] Powered ON"); }
|
|
@Override public void disable() { on = false; System.out.println(" [TV] Powered OFF"); }
|
|
|
|
@Override
|
|
public int getVolume() { return volume; }
|
|
|
|
@Override
|
|
public void setVolume(int percent) {
|
|
this.volume = Math.max(0, Math.min(100, percent));
|
|
System.out.println(" [TV] Volume set to " + this.volume);
|
|
}
|
|
|
|
@Override public int getChannel() { return channel; }
|
|
@Override public void setChannel(int ch) { this.channel = ch; System.out.println(" [TV] Channel -> " + ch); }
|
|
@Override public String getName() { return "Samsung TV"; }
|
|
}
|