0
respostas

Desafios: Aprimorando ArrayLists 1 ao 3

Animal

package br.com.alura.animal;

public class Animal {
    private String nome;
    private String som;

    public Animal(String nome, String som) {
        this.setNome(nome);
        this.setSom(som);
    }

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

    public void setSom(String som) {
        this.som = som;
    }

    @Override
    public String toString() {
        return "Nome: " + nome + "\nSom: " + som;
    }
}

Cachorro

package br.com.alura.animal;

public class Cachorro extends Animal {

    public Cachorro(String nome, String som) {
        super(nome, som);
    }
}

Main

import br.com.alura.animal.Animal;
import br.com.alura.animal.Cachorro;

import java.util.ArrayList;

public class Main {
    public static void main(String[] args) {
        Animal vaca = new Animal("Vaca", "Muuuu");
        Animal tigre = new Animal("Tigre", "Grrrr");
        Cachorro cachorro = new Cachorro("Draco", "Au Au");
        Cachorro cachorro2 = new Cachorro("Bolt", "Woof Woof");

        ArrayList<Animal> animais = new ArrayList<>();
        animais.add(vaca);
        animais.add(tigre);
        animais.add(cachorro);
        animais.add(cachorro2);

        for (Animal animal : animais) {
            if (animal instanceof Cachorro) {
                System.out.println("Cachorro encontrado: " + "\n" +  cachorro );
            } else {
                System.out.println("Animal encontrado: " + "\n" + animal);
            }
        }
    }
}