package br.com.controle;
public interface Controlavel {
void ligar();
void desligar();
}
package br.com.controle;
public class Luz implements Controlavel {
private boolean ligado = false;
@Override
public void ligar() {
if (!ligado) {
ligado = true;
System.out.println("Luz ligada.");
} else {
System.out.println("Luz já está ligada.");
}
}
@Override
public void desligar() {
if (ligado) {
ligado = false;
System.out.println("Luz desligada.");
} else {
System.out.println("Luz já está desligada.");
}
}
}
package br.com.controle;
public class ArCondicionado implements Controlavel {
private boolean ligado = false;
@Override
public void ligar() {
if (!ligado) {
ligado = true;
System.out.println("Ar-condicionado ligado.");
} else {
System.out.println("Ar-condicionado já está ligado.");
}
}
@Override
public void desligar() {
if (ligado) {
ligado = false;
System.out.println("Ar-condicionado desligado.");
} else {
System.out.println("Ar-condicionado já está desligado.");
}
}
}
package br.com.controle;
public class Principal {
public static void main(String[] args) {
Luz luz = new Luz();
ArCondicionado ar = new ArCondicionado();
luz.ligar();
luz.ligar();
luz.desligar();
luz.desligar();
ar.ligar();
ar.desligar();
}
}
Saída:
Luz ligada.
Luz já está ligada.
Luz desligada.
Luz já está desligada.
Ar-condicionado ligado.
Ar-condicionado desligado.