exemplo utilizando polimorfismo

4
Universidade Paulista (UNIP) / Campi: Chácara II / Paraíso Universidade Paulista (UNIP) / Campi: Chácara II / Paraíso Instituto de Ciências Exatas e Tecnológicas (ICET) Instituto de Ciências Exatas e Tecnológicas (ICET) Turma: Sistema de Informação / Ciência da Computação Turma: Sistema de Informação / Ciência da Computação Disciplina: Linguagem de Programação Orientada a Objetos Disciplina: Linguagem de Programação Orientada a Objetos Prof. MSc. Vladimir Camelo Prof. MSc. Vladimir Camelo Exercícios utilizando Polimorfismo Exercícios utilizando Polimorfismo PRIMEIRO RIMEIRO E EXEMPLO XEMPLO DE DE UTILIZAÇÃO UTILIZAÇÃO DE DE P POLIMORFISMO OLIMORFISMO public class FiguraGeometrica2D { private double base; protected double altura; public FiguraGeometrica2D( double b, double h ) { base = b; altura = h; } public double calculaArea() { return base * altura; } } public class Quadrado extends FiguraGeometrica2D{ public Quadrado (double base, double altura) { super (base, altura); } public double calculaArea( ) { return super.calculaArea(); } } public class Triangulo extends FiguraGeometrica2D { public Triangulo (double base, double altura) { super (base, altura); } public double calculaArea() { return super.calculaArea()/2.0; } } public class Trapezio extends FiguraGeometrica2D { private double baseMaior; public Trapezio (double baseMenor, double altura, double baseMaior) { super (baseMenor, altura); this.baseMaior = baseMaior; } public double calculaArea() { return super.calculaArea()/2 + baseMaior*altura/2; } }

Upload: marcio-jose

Post on 30-Jan-2016

217 views

Category:

Documents


3 download

DESCRIPTION

Exemplo Utilizando Polimorfismo

TRANSCRIPT

Page 1: Exemplo Utilizando Polimorfismo

Universidade Paulista (UNIP) / Campi: Chácara II / ParaísoUniversidade Paulista (UNIP) / Campi: Chácara II / ParaísoInstituto de Ciências Exatas e Tecnológicas (ICET)Instituto de Ciências Exatas e Tecnológicas (ICET)

Turma: Sistema de Informação / Ciência da ComputaçãoTurma: Sistema de Informação / Ciência da ComputaçãoDisciplina: Linguagem de Programação Orientada a ObjetosDisciplina: Linguagem de Programação Orientada a Objetos

Prof. MSc. Vladimir CameloProf. MSc. Vladimir Camelo

Exercícios utilizando PolimorfismoExercícios utilizando Polimorfismo

PPRIMEIRORIMEIRO E EXEMPLOXEMPLO DEDE UTILIZAÇÃOUTILIZAÇÃO DEDE P POLIMORFISMOOLIMORFISMO

public class FiguraGeometrica2D {private double base;protected double altura;public FiguraGeometrica2D( double b, double h ) {

base = b;altura = h;

}public double calculaArea() {

return base * altura;}

}

public class Quadrado extends FiguraGeometrica2D{public Quadrado (double base, double altura) {

super (base, altura);}public double calculaArea( ) {

return super.calculaArea();}

}

public class Triangulo extends FiguraGeometrica2D {public Triangulo (double base, double altura) {

super (base, altura);}

public double calculaArea() {return super.calculaArea()/2.0;

}}

public class Trapezio extends FiguraGeometrica2D {

private double baseMaior;

public Trapezio (double baseMenor, double altura, double baseMaior) {super (baseMenor, altura);this.baseMaior = baseMaior;

}

public double calculaArea() {return super.calculaArea()/2 + baseMaior*altura/2;

}}

Page 2: Exemplo Utilizando Polimorfismo

public class TesteFigura {public static void main (String args[]) {Quadrado q1 = new Quadrado( 10, 20);System.out.println ("A figura geométrica é um: " + q1.getClass().getSimpleName());System.out.println ("Valor da área: " + q1.calculaArea());

Triangulo t1 = new Triangulo (10, 20);System.out.println ("A figura geométrica é um: " + t1.getClass().getSimpleName());System.out.println ("Valor da área: " + t1.calculaArea());

Trapezio tr1 = new Trapezio (4, 24, 6);System.out.println ("A figura geométrica é um: " + tr1.getClass().getSimpleName());System.out.println ("Valor da área: " + tr1.calculaArea());

FiguraGeometrica2D q2 = new Quadrado (30, 40);System.out.println ("A figura geométrica é um: " + q2.getClass().getSimpleName());System.out.println ("Valor da área: " + q2.calculaArea());

FiguraGeometrica2D t2 = new Triangulo (30, 40);System.out.println ("A figura geométrica é um: " + t2.getClass().getSimpleName());System.out.println ("Valor da área: " + t2.calculaArea());

FiguraGeometrica2D tr2 = new Trapezio (8, 12, 6);System.out.println ("A figura geométrica é um: " + tr1.getClass().getSimpleName());System.out.println ("Valor da área: " + tr2.calculaArea());}

}

SSEGUNDOEGUNDO E EXEMPLOXEMPLO DEDE UTILIZAÇÃOUTILIZAÇÃO DEDE P POLIMORFISMOOLIMORFISMO

public class EmpregadoComissionadoFixo extends EmpregadoComissionado {private double salarioFixo;public EmpregadoComissionadoFixo(String primeiroNome,

String segundoNome,String numeroCIC,double vendas,double taxa, double salFixo ) {

super (primeiroNome, segundoNome, numeroCIC, vendas, taxa);setSalarioFixo ( salFixo );

}

public void setSalarioFixo ( double salario) {salarioFixo = (salario < 0.0 ) ? 0.0 : salario;

}

public double getSalarioFixo () {return salarioFixo;

}

public double calculaGanhos(){return (salarioFixo + super.calculaGanhos());

}

public String toString() {return super.toString() + "\nSalário fixo: " + salarioFixo;

} }

Page 3: Exemplo Utilizando Polimorfismo

public class EmpregadoComissionado extends Object {

private String nome; private String sobrenome; private String CIC; private double vendasBrutas; private double comissao;

public EmpregadoComissionado(String primeiroNome, String segundoNome,

String numeroCIC,double vendas, double taxa ) {

nome = primeiroNome; sobrenome = segundoNome; CIC = numeroCIC; setVendasBrutas( vendas ); setComissao( taxa );

}

public void setNome( String primeiroNome ) {nome = primeiroNome;

}

public String getNome() {return nome;

} public void setSobrenome( String segundoNome ){

sobrenome = segundoNome;} public String getSobrenome() {

return sobrenome;} public void setCIC( String numeroCIC ) {

CIC = numeroCIC;} public String getCIC() {

return CIC;} public void setVendasBrutas( double vendas ) {

vendasBrutas = ( vendas < 0.0 ) ? 0.0 : vendas;} public double getVendasBrutas() {

return vendasBrutas;} public void setComissao( double taxa ) {

comissao = ( taxa > 0.0 && taxa < 1.0 ) ? taxa : 0.0;} public double getComissao() {

return comissao;} public double calculaGanhos(){

return comissao * vendasBrutas;} public String toString(){

return String.format( "%s: %s %s\n%s: %s\n%s: %.2f\n%s: %.2f\n %s%.2f ", "Nome Completo", nome, sobrenome, "Número do CIC", CIC, "Vendas Brutas", vendasBrutas, "Taxa de comissão", comissao, "Salário Total ", calculaGanhos());

} }

Page 4: Exemplo Utilizando Polimorfismo

public class TestePolimorfismo {public static void main( String args[] ) {

EmpregadoComissionado e1 = new EmpregadoComissionado("Vladimir", "Camelo","123456789-01", 10000, 0.6 );

System.out.println(e1 + "\n\nInformações do empregado");EmpregadoComissionadoFixo e2 = new EmpregadoComissionadoFixo(

"Anna Clara","Camelo", "111111111-11",5000, 0.1, 7500);System.out.println( e2 + "\n\nInformações do empregado" );e1 = e2; // instrução mais importante do programaSystem.out.println( e1 + "\n\nAinda não sei que tipo de empregado é!!!");EmpregadoComissionado e3 = new EmpregadoComissionadoFixo(

"Ana", "Maria", "3456543-32", 2000, 0.5, 12000);System.out.printf( e3 + "\n\nO que será o empregado e3??");

} }