1
resposta

Desafio: hora da prática

void main() {
    ArrayList<Produto> listaDeProdutos = new ArrayList<>();
    Produto produto1 = new Produto("Sabao", 20.00, 3);
    Produto produto2 = new Produto("Samsung", 20.00, 3);
    Produto produto3 = new Produto("Bucha", 10.00, 3);

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

    System.out.println("Tamanho da lista: " + listaDeProdutos.size());
    System.out.println(listaDeProdutos.get(0).toString());
    System.out.println(listaDeProdutos.toString());

    System.out.println("\n--- Produto Perecível ---");
    ProdutoPerecivel leite = new ProdutoPerecivel("Leite Integral", 5.50, 20, "20/02/2026");
    System.out.println(leite);
}
    
public class ProdutoPerecivel extends Produto{
    private String dataDeValidade;

    public ProdutoPerecivel(){
    }

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

    @Override
    public String toString() {
        // Reaproveita o toString do pai e adiciona a validade
        return super.toString() + " , Validade: " + dataDeValidade;
    }
}
    
public class Produto {
    String nome;
    private double preco;
    private int quantidade;

    public Produto(){
    }

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

    public String toString(){
        return "(Produto: " + this.nome + " ,Preco: " + this.preco + ", Quantidade: " +  this.quantidade + ")";
    }
}
1 resposta

Oi, Eduardo, tudo bem?

Parabéns pela resolução do desafio!

Seu código está muito bem estruturado.

Continue praticando.

Bons estudos!

Sucesso

Imagem da comunidade