import java.util.ArrayList;
// Classe Produto class Produto { private String nome; private double preco; private int quantidade;
// Construtor
public Produto(String nome, double preco, int quantidade) {
this.nome = nome;
this.preco = preco;
this.quantidade = quantidade;
}
// Método toString()
@Override
public String toString() {
return "Produto{" +
"nome='" + nome + '\'' +
", preco=" + preco +
", quantidade=" + quantidade +
'}';
}
}
// Classe ProdutoPerecivel class ProdutoPerecivel extends Produto { private String dataValidade;
// Construtor
public ProdutoPerecivel(String nome, double preco, int quantidade, String dataValidade) {
super(nome, preco, quantidade);
this.dataValidade = dataValidade;
}
// Método toString() modificado para incluir data de validade
@Override
public String toString() {
return super.toString() + ", dataValidade='" + dataValidade + '\'' + '}';
}
}
public class Main { public static void main(String[] args) { // Lista de produtos ArrayList produtos = new ArrayList<>(); produtos.add(new Produto("Arroz", 10.99, 100)); produtos.add(new Produto("Feijão", 14.49, 50)); produtos.add(new ProdutoPerecivel("Leite", 2.99, 200, "01/01/2025"));
// Imprime o tamanho da lista
System.out.println("Tamanho da lista: " + produtos.size());
// Recupera um produto pelo índice
System.out.println("Produto no índice 1: " + produtos.get(1));
// Imprime todos os produtos usando toString() automático
System.out.println("Lista de produtos:");
for (Produto produto : produtos) {
System.out.println(produto);
}
}
}