1
resposta

Desafio: horaPratica - Aula 2 (Construtores)

import java.util.ArrayList;
import java.util.List;

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

        List<Produto> listaProdutos = new ArrayList<>();

        Produto produto1 = new Produto("caderno", 3.00, 3);
        Produto produto2 = new Produto("lápis", 1.50, 10);
        Produto produto3 = new Produto("borracha", 0.50, 30);

        listaProdutos.add(produto1);
        listaProdutos.add(produto2);
        listaProdutos.add(produto3);

        System.out.println("Tamanho Lista Produtos: " + listaProdutos.size());
        System.out.println("Recuperando um Produto: " + listaProdutos.get(2).getNome());
        System.out.println("toString: " + listaProdutos.toString());

        for (Produto produto : listaProdutos) {
            System.out.println(produto);
        }

        ProdutoPerecivel novoProduto = new ProdutoPerecivel("carne", 30.00, 10,  "2025.12.31");
        System.out.println("Produtos Perecíveis: " + novoProduto);

    }
}
import org.w3c.dom.ls.LSOutput;

import java.util.ArrayList;

public class Produto {
   private String nome;
   private double preco;
   private int quantidade;

    public Produto(String nome, double preco, int quantidade) {
        this.nome = nome;
        this.preco = preco;
        this.quantidade = quantidade;
    }

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

    public double getPreco() {
        return preco;
    }
    public void setPreco(double preco) {
        this.preco = preco;
    }

    public int getQuantidade() {
        return quantidade;
    }
    public void setQuantidade(int quantidade) {
        this.quantidade = quantidade;
    }

    @Override
    public String toString() {
        return "Produto [ nome = " + nome +
                       ", preco = " + preco +
                       ", quantidade = " + quantidade + "]";
    }
}

public class ProdutoPerecivel extends Produto {

    private String dataValidade;

    public ProdutoPerecivel(String nome, double preco, int quantidade, String dataValidade) {
        super(nome, preco, quantidade);
        this.dataValidade = dataValidade;
    }

}
1 resposta

Olá, Adriano, como vai?

O seu código está estruturado de forma correta para o desafio, você criou o construtor na classe Produto, sobrescreveu o toString() e também fez a herança em ProdutoPerecivel utilizando o super.

Continue explorando essas práticas, pois a combinação de construtores, herança e sobrescrita de métodos é uma base sólida para evoluir na orientação a objetos.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!