Olá Pessoal Boa Tarde.
Estou começando na programação orientado objeto, e estou resolvendo alguns exercícios, estou com dúvida em uma parte do exercício, segue:
- Crie uma classe que modele uma televisão e que permita ligar e desligar a TV, e alterar e consultar o número do canal e o volume. O número do canal e o volume somente podem ser alterados dentro de uma faixa válida.
Ok é esse o exercício. Minha dúvida é de como implementar a condição de alterar o canal dentro de uma faixa (maior que menor que).
Como implemento um if ?
Segue abaixo o código:
principal.java
public class principal {
public static void main(String[] args)
{
//objeto 1 do tipo tv
tv tv1=new tv("Samsung","Modelo 2012");
tv1.detalhes();
tv1.funcao_ligar_desligar(false);
tv1.canal(1);
tv1.volume(0);
System.out.println("\n");
//objeto 2 do tipo tv
tv tv2=new tv("Sony", "Modelo 2012");
tv2.detalhes();
tv2.funcao_ligar_desligar(false);
tv2.canal(2);
tv2.volume(1);
}
}
tv.java
public class tv {
String modelo;
String marca;
public tv(String modelo,String marca)
{
this.modelo=modelo;
this.marca=marca;
}
void detalhes()
{
System.out.print(""+modelo);
System.out.println(" "+marca);
}
void funcao_ligar_desligar(boolean estado)
{
if(estado==true)
{
System.out.println("Funcao Ligar TV");
System.out.println("Estado - TV Ligada");
}
else
{
System.out.println("Funcao - Desligar TV");
System.out.println("Estado - TV Desligada");
}
}
void canal(int canal)
{
//canal=>1<=10; LIMITAR AQUI //limitando a faixa de aleracao dos canais - ver como limitar
System.out.println("Canal - "+canal);
}
void volume(int volume)
{
System.out.println("Volume - "+volume);
}
}
“alterar e consultar” , entendo que seja um metodo para alterar(setter) e um para consultar(getter).
Cade as variaveis da tv onde armazenará ligada(boolean), canal(int), volume(int)???
public class Tv { // nome de classe sempre inicia em MAIUSCULA
private String modelo; // use encapsulamento sempre
private String marca;
private boolean ligada;
private int canal;
private int volume;
public Tv(String modelo, String marca) {
this.modelo = modelo;
this.marca = marca;
this.canal = 1;
this.volume = 0;
this.ligada = false;
}
public String getModelo() {
return modelo;
}
public String getMarca() {
return marca;
}
public boolean isLigada() {
return ligada;
}
public void setLigada(boolean ligada) {
this.ligada = ligada;
}
public int getCanal() {
return canal;
}
public void setCanal(int canal) {
if (canal >= 1 && canal <= 128)
this.canal = canal;
}
public int getVolume() {
return volume;
}
public void setVolume(int volume) {
if (volume >= 0 && volume <= 100)
this.volume = volume;
}
public void ligaDesliga() {
if (ligada) {
ligada = false;
} else {
ligada = true;
}
}
public void detalhes() {
System.out.println("Marca: " + marca);
System.out.println("Modelo: " + modelo);
System.out.println("TV ligada: " + ligada);
System.out.println("Canal: " + canal);
System.out.println("Volume: " + volume + "\n");
}
}
public class Principal {
public static void main(String[] args) {
Tv tv1 = new Tv("Samsung", "Modelo 2012");
tv1.setLigada(true);
tv1.setCanal(1);
tv1.setVolume(0);
tv1.detalhes();
Tv tv2 = new Tv("Sony", "Modelo 2012");
tv2.ligaDesliga();
tv2.setCanal(200);
tv2.setVolume(101);
tv2.detalhes();
tv2.ligaDesliga();
tv2.detalhes();
}
}