Classe Produto:
import java.util.ArrayList;
public class Produto {
private String nome;
private double preco;
private int quantidade;
@Override
public String toString() {
return "nome: " + nome + ", preco: " + preco + ", quantidade: " + quantidade;
}
public Produto(String nome, double preco, int quantidade){
this.setNome(nome);
this.setPreco(preco);
this.setQuantidade(quantidade);
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public void setPreco(double preco) {
this.preco = preco;
}
public void setQuantidade(int quantidade) {
this.quantidade = quantidade;
}
}
Classe ProdutoPerecivel:
import java.time.LocalDate;
public class ProdutoPerecivel extends Produto{
LocalDate dataValidade;
public ProdutoPerecivel(String nome, double preco, int quantidade, LocalDate dataValidade) {
super(nome, preco, quantidade);
this.setDataValidade(dataValidade);
}
@Override
public String toString() {
return super.toString() + ", validade: " + dataValidade;
}
public LocalDate getDataValidade() {
return dataValidade;
}
public void setDataValidade(LocalDate dataValidade) {
this.dataValidade = dataValidade;
}
}
Classe Principal:
import java.time.LocalDate;
import java.util.ArrayList;
public class Principal {
public static void main(String[] args) {
ArrayList<Produto> listaDeProdutos = new ArrayList<>();
listaDeProdutos.add(new Produto("Televisão", 5000, 3));
listaDeProdutos.add(new Produto("Geladeira", 3500, 5));
listaDeProdutos.add(new Produto("Notebook", 4500, 8));
System.out.println("Tamanho da lista: " + listaDeProdutos.size());
System.out.println("Terceiro produto: " + listaDeProdutos.get(2).getNome());
System.out.println("Lista de produtos: ");
for (Produto produto : listaDeProdutos){
System.out.println(produto);
}
ProdutoPerecivel feijao = new ProdutoPerecivel("Feijão", 13, 20, LocalDate.of(2025,11, 20));
System.out.println("Produto perecível: " + feijao);
}
}
Impressão: