public class Automovel {
private String modelo, cor;
private int ano;
private boolean estadoMotor;
public void setmodelo(String modelo){
this.modelo = modelo;
}
public void setcor(String cor){
this.cor = cor;
}
public String getmodelo(){
return this.modelo;
}
public void setano(int ano){
this.ano = ano;
}
public int getano(){
return this.ano;
}
public boolean getestadoMotor(){
return estadoMotor;
}
public String getcor(){
return this.cor;
}
public void ligaMotor(){
this.estadoMotor = true;
}
public void desligaMotor(){
this.estadoMotor = false;
}
public void clear() {
for(int i=0;i<100;i++)
System.out.println("");
}
public static void main(String[] args) throws IOException {
int op, ano;
String modelo, cor;
do {
Automovel aut = new Automovel();
System.out.println("-----------------------------");
System.out.println("- Sistema de Automóveis -");
System.out.println("- Selecione uma opção: -");
System.out.println("- 1 - Adicionar Modelo; -");
System.out.println("- 2 - Adicionar Cor; -");
System.out.println("- 3 - Adicionar Ano; -");
System.out.println("- 4 - Ligar Motor; -");
System.out.println("- 5 - Desligar Motor; -");
System.out.println("- 6 - Descrição do Carro; -");
System.out.println("- 7 - Sair -");
System.out.println("-----------------------------");
Scanner scan = new Scanner(System.in);
op = scan.nextInt();
switch(op){
case 1:
aut.clear();
System.out.print("Digite o nome do automóvel: ");
BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
modelo = input.readLine();
aut.setmodelo(modelo);
break;
case 2:
aut.clear();
System.out.print("Digite a cor do automóvel: ");
cor = scan.nextLine();
aut.setcor(cor);
break;
case 3:
aut.clear();
System.out.print("Digite o ano do automóvel: ");
ano = scan.nextInt();
aut.setano(ano);
break;
case 4:
aut.clear();
if(aut.getestadoMotor() == true)
System.out.print("Atenção! O motor já está ligado!");
else{
aut.ligaMotor();
System.out.print("Motor ligado com sucesso!");
}
break;
case 5:
aut.clear();
if(aut.getestadoMotor() == false)
System.out.print("Atenção! O motor já está desligado!");
else {
aut.desligaMotor();
System.out.print("Motor desligado com sucesso!");
}
break;
case 6:
aut.clear();
System.out.println("Nome do veículo: " + aut.getmodelo());
System.out.println("Cor do veículo: " + aut.getcor());
System.out.println("Ano do veículo: " + aut.getano());
if(aut.getestadoMotor() == true)
System.out.println("O motor do veículo está ligado.");
else
System.out.println("O motor do veículo está desligado.");
break;
default:
aut.clear();
System.out.println("Opção Inválida!");
break;
}
}while(op != 7);
}
}
Basicamente, é um programa simples, só pra eu aprender como funciona os métodos Set e Get. Porém, quando escolho a opção 6 (que no caso é para exibir os resultados), os valores das variáveis estão Nulos! Como se não tivessem sido alterados ou a programação para exibir está errada. Toda ajuda é bem-vinda!
Edit:
E esse é como ficou o programa (só não descobri uma maneira de fazer com que o scan.next() no final de cada switch case só não precisasse digitar nada, só teclava Enter o programa já voltava pro menu):
public class Automovel {
private String modelo, cor;
private int ano;
private boolean estadoMotor;
public void setmodelo(String modelo){
this.modelo = modelo;
}
public void setcor(String cor){
this.cor = cor;
}
public String getmodelo(){
return this.modelo;
}
public void setano(int ano){
this.ano = ano;
}
public int getano(){
return this.ano;
}
public boolean getestadoMotor(){
return estadoMotor;
}
public String getcor(){
return this.cor;
}
public void ligaMotor(){
this.estadoMotor = true;
}
public void desligaMotor(){
this.estadoMotor = false;
}
public void clear() {
for(int i=0;i<100;i++)
System.out.println("");
}
public static void main(String[] args) throws IOException {
int op, ano;
String modelo, cor;
Automovel aut = new Automovel();
do {
System.out.println("-----------------------------");
System.out.println("- Sistema de Automóveis -");
System.out.println("- Selecione uma opção: -");
System.out.println("- 1 - Adicionar Modelo; -");
System.out.println("- 2 - Adicionar Cor; -");
System.out.println("- 3 - Adicionar Ano; -");
System.out.println("- 4 - Ligar Motor; -");
System.out.println("- 5 - Desligar Motor; -");
System.out.println("- 6 - Descrição do Carro; -");
System.out.println("- 7 - Sair -");
System.out.println("-----------------------------");
Scanner scan = new Scanner(System.in);
op = scan.nextInt();
switch(op){
case 1:
aut.clear();
System.out.print("Digite o nome do automóvel: ");
modelo = scan.next();
aut.setmodelo(modelo);
scan.nextLine();
aut.clear();
break;
case 2:
aut.clear();
System.out.print("Digite a cor do automóvel: ");
cor = scan.next();
aut.setcor(cor);
scan.nextLine();
aut.clear();
break;
case 3:
aut.clear();
System.out.println("Digite o ano do automóvel: ");
ano = scan.nextInt();
aut.setano(ano);
scan.nextLine();
aut.clear();
break;
case 4:
aut.clear();
if(aut.getestadoMotor() == true)
System.out.println("Atenção! O motor já está ligado!");
else{
aut.ligaMotor();
System.out.println("Motor ligado com sucesso!");
}
System.out.println("Digite qualquer coisa e aperte Enter para continuar: ");
scan.next();
aut.clear();
break;
case 5:
aut.clear();
if(aut.getestadoMotor() == false)
System.out.println("Atenção! O motor já está desligado!");
else {
aut.desligaMotor();
System.out.println("Motor desligado com sucesso!");
}
System.out.println("Digite qualquer coisa e aperte Enter para continuar: ");
scan.next();
aut.clear();
break;
case 6:
aut.clear();
System.out.println("Nome do veículo: " + aut.getmodelo());
System.out.println("Cor do veículo: " + aut.getcor());
System.out.println("Ano do veículo: " + aut.getano());
if(aut.getestadoMotor() == true)
System.out.println("O motor do veículo está ligado.");
else
System.out.println("O motor do veículo está desligado.");
System.out.println("Digite qualquer coisa e aperte Enter para continuar: ");
scan.next();
aut.clear();
break;
case 7:
aut.clear();
System.out.println("Tchau!");
break;
default:
aut.clear();
System.out.println("Opção Inválida!");
System.out.println("Digite qualquer coisa e aperte Enter para continuar: ");
scan.next();
aut.clear();
break;
}
}while(op != 7);
}
}