Ir ao conteúdo
  • Cadastre-se
Augusto G rocha

Java Get e Set na Interface

Recommended Posts

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×