Ir ao conteúdo
  • Cadastre-se

Java Get e Set na Interface


Posts recomendados

ola , tenho essa linha de hierarquia principal rodando no netbeans, mas o programa fica repetindo o texto, vou mandar os códigos que eu acho que estão com erros. se precisarem do resto vejam o arquivo rar.

 

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package simuladordepatosplus;

import InterfacesDosComportamentos.InterfaceDosComportamentosDeDancar;
import InterfacesDosComportamentos.InterfaceDosComportamentosDeVoar;
import InterfacesDosComportamentos.InterfaceDosComportamentosDeEmitirSom;
import InterfacesDosComportamentos.InterfaceDosComportamentosDiversos;
import InterfacesDosComportamentos.InterfaceDosComportamentosDeNadar;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

/**
 *
 * @author ivan.icto
 */
public abstract class Pato {

    private String nome;
    private String cor;
    private String descricao;
    private Date datadenascimento;

    InterfaceDosComportamentosDeEmitirSom comportamentosdeemitirsom;
    InterfaceDosComportamentosDeVoar comportamentosdevoar;
    InterfaceDosComportamentosDeDancar comportamentosdedancar;
    InterfaceDosComportamentosDeNadar comportamentosdenadar;
    InterfaceDosComportamentosDiversos comportamentosdiversos;

    public abstract void display();

    public void realizarComportamentoDeEmitirSom() {

        comportamentosdeemitirsom.emitirSom();

    }

    public void realizarComportamentoDeVoar() {

        comportamentosdevoar.voar();

    }

    public void realizarComportamentoDeDancar() {

        comportamentosdedancar.dancar();

    }

    public void realizarComportamentoDiverso() {

        comportamentosdiversos.comportamentosdiversos();

    }

    public void realizarComportamentoDeNadar() {

        comportamentosdenadar.nadar();

    }

    public int calcularIdadeDoPato(Date datadenascimento) {

        Calendar datadeaniversario = new GregorianCalendar();

        datadeaniversario.setTime(datadenascimento);

        int anoAtual = GregorianCalendar.getInstance().get(Calendar.YEAR);
        int anoDaDatadenasciemnto = datadeaniversario.get(Calendar.YEAR);

        int idade = anoAtual - anoDaDatadenasciemnto;

        return idade;

    }
    
    public void vacinar (Vacina vacina){
        
        System.out.println("Este pato toma uma vacina");
        System.out.println("O código da vacina é " + vacina.getCodigo());
        System.out.println("A descrição da vacina é " + vacina.getDescricao());
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getCor() {
        return cor;
    }

    public void setCor(String cor) {
        this.cor = cor;
    }

    public String getDescricao() {
        return descricao;
    }

    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    public Date getDatadenascimento() {
        return datadenascimento;
    }

    public void setDatadenascimento(Date datadenascimento) {
        this.datadenascimento = datadenascimento;
    }

}
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package simuladordepatosplus;

import ComportamentosDeEmitirSom.EmitirSomQuack;
import ComportamentosDeVoar.VoarComAsas;
import java.text.ParseException;
import java.text.SimpleDateFormat;

/**
 *
 * @author ivan.icto
 */
public class PatoCabecaVermelha extends Pato {

    @Override
    public void display() {
        
        
 System.out.println("#####################################################################################");
 System.out.println("Eu sou um pato da espécie cabeça vermelha **********************");
       
  PatoCabecaVermelha patocabecavermelha = new PatoCabecaVermelha();

        patocabecavermelha.setNome("Paula");
        patocabecavermelha.setCor("Preto e Branco");
        patocabecavermelha.setDescricao("O pato cabeça vermelho (Netta rufina) é uma ave da família Anatidae.");

        SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");

        try {
            patocabecavermelha.setDatadenascimento(sdf.parse("16/08/1978"));
        } catch (ParseException ex) {
            System.out.println("Erro ao conerter a Data" + ex);
        }

        System.out.println("Meu nome é:" + patocabecavermelha.getNome());
        System.out.println("Minha cor é:" + patocabecavermelha.getCor());
        System.out.println("Minha breve descrição é: " + patocabecavermelha.getDescricao());
        System.out.println("Eu tenho " + patocabecavermelha.calcularIdadeDoPato(patocabecavermelha.getDatadenascimento()) + " anos de idade");

        
        Vacina vacinadopatocabecavermelha = new Vacina();

        vacinadopatocabecavermelha.setCodigo(112);
        vacinadopatocabecavermelha.setDescricao("Vacina contra febre amarela");
        patocabecavermelha.vacinar(vacinadopatocabecavermelha);
        
        System.out.println("Meus comportamentos são:");

        patocabecavermelha.display();

        System.out.println("########################################################################################");



 comportamentosdevoar = new VoarComAsas();
comportamentosdeemitirsom = new EmitirSomQuack();

        realizarComportamentoDeEmitirSom();
        realizarComportamentoDeVoar();

    }

}
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package simuladordepatosplus;



/**
 *
 * @author ivan.icto
 */
public class SimuladorDePatosPlus {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        
        PatoCabecaVermelha pato = new PatoCabecaVermelha();
        pato.display();
      
    }

}

 

SimuladorDePatosPlusProfIvan.rar

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!