DesafioCinco.java
Por: jairussilva • 4/5/2015 • Trabalho acadêmico • 648 Palavras (3 Páginas) • 275 Visualizações
/*Que tal incluirmos no desafio o conceito de herança?
Usando como base a resolução que eu postei, criem uma classe "pai" das classes aluno e professor incluindo nesta classe "pai" os atributos e métodos comuns as classes aluno e professor.
Na classe "pai" criem métodos de leitura e de listagem que deveráo ser especializados (polimorfismo) nas classes aluno e professor. Estes métodos devem respectivamente: ler as informações de um aluno/professor e listar todas as informações na tela de um aluno/professor.*/
import java.util.ArrayList;
import java.util.List;
import javax.swing.JOptionPane;
public class DesafioCinco {
private static final int CADASTRAR_ALUNO = 1;
private static final int CADASTRAR_PROFESSOR = 2;
private static final int LISTAR_ALUNOS = 3;
private static final int LISTAR_PROFESSORES = 4;
private static final int SAIR = 5;
public static void main(String[] args) {
List<Aluno> alunos = new ArrayList<>();
List<Professor> professores = new ArrayList<>();
String opcoes = "Escolha uma das opcoes\n1) Cadastrar aluno\n2) Cadastrar professor\n"
+ "3) Listar alunos\n4) Listar professores\n" + "5) Sair";
int opcao = 0;
while (opcao != SAIR) {
opcao = Integer.parseInt(JOptionPane.showInputDialog(opcoes));
switch (opcao) {
case CADASTRAR_ALUNO:
Aluno aluno = new Aluno();
aluno.ler();
alunos.add(aluno);
break;
case CADASTRAR_PROFESSOR:
Professor professor = new Professor();
professor.ler();
professores.add(professor);
break;
case LISTAR_ALUNOS:
Aluno.listar(alunos);
break;
case LISTAR_PROFESSORES:
Professor.listar(professores);
break;
}
}
}
}
public class Pessoa {
private String nome;
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
}
import java.util.List;
import javax.swing.JOptionPane;
public class Aluno extends Pessoa {
private String situacao;
private Double mediaFinal;
public void ler() {
setNome(JOptionPane.showInputDialog("Nome do aluno"));
setSituacao(JOptionPane.showInputDialog("Situacao do aluno"));
setMediaFinal(Double.parseDouble(JOptionPane.showInputDialog("Media final do aluno")));
...