Isso já está bem explicito no enunciado, então caso não saiba como implementar, vamos lá:
Crie um projeto, e duas classe TV e Controle.
Na classe TV defina os atributos:
public class tv {
Integer volume, canal;
String marca;
boolean ligado;
}
E gere os modificadores e acessores, dica para otimizar isso, clica com o botão direto dentro da área de digitação de código Inserir código > Getter & Setter… > marque todos os atribuitos e a IDE gerará automaticamente.
public class tv {
Integer volume, canal;
String marca;
boolean ligado;
public Integer getVolume() {
return volume;
}
public void setVolume(Integer volume) {
this.volume = volume;
}
public Integer getCanal() {
return canal;
}
public void setCanal(Integer canal) {
this.canal = canal;
}
public String getMarca() {
return marca;
}
public void setMarca(String marca) {
this.marca = marca;
}
public boolean isLigado() {
return ligado;
}
public void setLigado(boolean ligado) {
this.ligado = ligado;
}
}
Agora na classe controle você define os seus próprios atributos e métodos que alteram os atributos da TV. Pode definir já também o canal máximo e volume. Dentro de cada método você fazer as devidas alterações na tv, vou fazer o primeiro como exemplo.
public class controle {
Integer volumeMaximo=100, canalMaximo=50;
tv t = new tv();
void aumentarVolume(){
Integer volume = t.getVolume();
if(volume < volumeMaximo){
volume++;
t.setVolume(volume);
}else{
System.out.println("Volume já está no máximo");
}
}
void diminuirVolume(){
}
void subirCanal(){
}
void descerCanal(){
}
}
Como você precisa acessar os atributos de outra classe é preciso instancia-la, por a linha de código em cima do método, assim você pode usar o t. e chamar a classe que precisar em qualquer método da classe controle.
Além disso você precisa de uma classe principal, pra ligar a TV e definiar os valores iniciais, por exemplo:
public class main {
public static void main(String[] args) throws IOException {
BufferedReader reader;
reader = new BufferedReader(new InputStreamReader(System.in));
tv t = new tv();
System.out.println("\t\tControle");
System.out.println("1 Ligar");
System.out.println("2 Aumentar volume");
System.out.println("3 Diminuir volume");
System.out.println("4 Aumentar canal");
System.out.println("5 Diminuir canal");
System.out.println("6 Desligar");
System.out.println("Opção:");
String reply = reader.readLine();
int op = Integer.parseInt(reply);
switch (op){
case 1:
if (t.isLigado()) {
System.out.println("TV já está ligada!");
}else{
t.setLigado(true);
}
break;
case 2:
//verificar se está ligada
//aumentar o volume
break;
}
}
}