Classe Produto.java java Copiar Editar public class Produto {
private String nome;
private double preco;
private int quantidade;
// Construtor com parâmetros
public Produto(String nome, double preco, int quantidade) {
this.nome = nome;
this.preco = preco;
this.quantidade = quantidade;
}
// Getters
public String getNome() {
return nome;
}
public double getPreco() {
return preco;
}
public int getQuantidade() {
return quantidade;
}
// Método toString sobrescrito
@Override
public String toString() {
return "Produto{" +
"nome='" + nome + '\'' +
", preco=" + preco +
", quantidade=" + quantidade +
'}';
}
} Classe ProdutoPerecivel.java java Copiar Editar import java.time.LocalDate;
public class ProdutoPerecivel extends Produto {
private LocalDate dataValidade;
// Construtor com chamada ao super
public ProdutoPerecivel(String nome, double preco, int quantidade, LocalDate dataValidade) {
super(nome, preco, quantidade);
this.dataValidade = dataValidade;
}
public LocalDate getDataValidade() {
return dataValidade;
}
// toString com dados da superclasse + data de validade
@Override
public String toString() {
return super.toString() + ", dataValidade=" + dataValidade;
}
} Classe Principal.java java Copiar Editar import java.time.LocalDate; import java.util.ArrayList;
public class Principal { public static void main(String[] args) { // Criação da lista de produtos ArrayList listaProdutos = new ArrayList<>();
// Adição de produtos usando o construtor
listaProdutos.add(new Produto("Caderno", 12.90, 10));
listaProdutos.add(new Produto("Caneta", 2.50, 50));
listaProdutos.add(new Produto("Borracha", 1.00, 30));
// Impressão do tamanho da lista
System.out.println("Tamanho da lista: " + listaProdutos.size());
// Recuperação de um produto pelo índice
System.out.println("Produto na posição 1: " + listaProdutos.get(1));
// Impressão de todos os produtos
System.out.println("Lista completa de produtos:");
for (Produto produto : listaProdutos) {
System.out.println(produto);
}
// Criação e impressão de um produto perecível
ProdutoPerecivel leite = new ProdutoPerecivel("Leite", 4.99, 20, LocalDate.of(2025, 5, 30));
System.out.println("Produto perecível: " + leite);
}
}