Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
package negocio;
public class Aluno {
public Aluno() {
}
package negocio;
public class AlunoException extends Exception{
public AlunoException() {
}
@Override
public String toString(){
return this.getMessage()+" detalhes: [Exceção ocorrida em Aluno]";
}
}
float getValor();
package negocio;
public interface INotaPonderada extends INota{
int getPeso();
package negocio;
public interface INotas {
float obterMedia();
float somatoriaNota();
package negocio;
public class NotaAritmetica implements INota{
package negocio;
public class NotaException extends Exception{
public NotaException() {
}
@Override
public String toString(){
return this.getMessage()+" detalhes: [Exceção ocorrida em Nota]";
}
}
package negocio;
public class NotaPonderada extends NotaAritmetica implements INotaPonderada{
@Override
public float getValor(){
return super.getValor() * this.peso;
}
}
package negocio;
import java.util.ArrayList;
import java.util.List;
public NotasAritmetica(){
this.listaNota = new ArrayList<INota>();
}
package negocio;
public class NotasPonderada extends NotasAritmetica{
public NotasPonderada(){
}
@Override
public float obterMedia(){
return this.somatoriaNota() / this.somatoriaPeso();
}
package aplicacao;
import negocio.Aluno;
import negocio.AlunoException;
import negocio.INotas;
import negocio.NotaAritmetica;
import negocio.NotaException;
import negocio.NotaPonderada;
import negocio.NotasAritmetica;
import negocio.NotasPonderada;
INotas notas1;
try {
notas1.adicionaNota(new NotaAritmetica(8.0f));
notas1.adicionaNota(new NotaAritmetica(7.0f));
notas1.adicionaNota(new NotaAritmetica(9.0f));
} catch (NotaException ex) {
System.out.println(ex);
}
try {
aluno1 = new Aluno(1010, "Fulano das Quantas");
aluno1.setNotas(notas1);
} catch (AlunoException ex) {
System.out.println(ex);
}
try {
notas2.adicionaNota(new NotaPonderada(8.0f, 1));
notas2.adicionaNota(new NotaPonderada(6.0f, 2));
notas2.adicionaNota(new NotaPonderada(5.0f, 3));
} catch (NotaException ex) {
System.out.println(ex);
}
try {
aluno2 = new Aluno(2020, "Beltrano das Quantas");
aluno2.setNotas(notas2);
} catch (AlunoException ex) {
System.out.println(ex);
}
System.out.println("Matricula......: "+aluno1.getMatricula());
System.out.println("Nome...........: "+aluno1.getNome());
System.out.println("Somatoria notas: "+aluno1.getSomatoriaNotas());
System.out.println("Média notas....: "+aluno1.getMedia());
System.out.println("-----------------------------------------");
System.out.println("Matricula......: "+aluno2.getMatricula());
System.out.println("Nome...........: "+aluno2.getNome());
System.out.println("Somatoria notas: "+aluno2.getSomatoriaNotas());
System.out.println("Média notas....: "+aluno2.getMedia());
}
}