0
respostas

[Dúvida] Dúvida sobre o desafio

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;
}

@Override
public String toString() {
    return "Produto: " + nome + " Preço: R$ " + preco + " Quantidade em estoque: " + quantidade;
}

}

public class ProdutoPerecivel extends Produto {

String dataDeValidade;

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

}

import java.util.ArrayList;

public class Main { public static void main(String[] args) { Produto borracha = new Produto("Borracha", 5.90, 1); Produto caneta = new Produto("Caneta bic", 2.50, 2); Produto lapiseira = new Produto("Lapiseira 0.7", 7.50, 1); ProdutoPerecivel carne = new ProdutoPerecivel("Acém moído 1kg", 17.90, 1, "25/02/2024");

    ArrayList<Produto> listaDeProdutos = new ArrayList<>();
    listaDeProdutos.add(borracha);
    listaDeProdutos.add(lapiseira);
    listaDeProdutos.add(caneta);

    System.out.println("Tamanho da lista de produtos: " + listaDeProdutos.size());
    System.out.println("Produto: " + listaDeProdutos.get(0));
    System.out.println("Lista de produtos: " + listaDeProdutos.toString());
    System.out.println(carne);

}

}

Ao imprimir o produto perecivel, notei que ele retorna somente os dados que inseri no metodo toString, deixando para trás a validade que defini para o produto. Para corrigir isso seria necessário adicionar uma condicional dentro do método?