Classe Principal
import java.util.ArrayList;
import java.util.Scanner;
public class Principal {
public static void main(String[] args) {
ArrayList<Produto> listaDeProdutos = new ArrayList<>();
Scanner scanner = new Scanner(System.in);
int contador = 1;
while (contador <= 3) {
System.out.println("Digite o nome do produto:");
String nome = scanner.nextLine();
System.out.println("Digite o valor do produto:");
double preco = scanner.nextDouble();
System.out.println("Digite a quantidade do produto:");
int quantidade = scanner.nextInt();
scanner.nextLine();
System.out.println("Digite a Data de Validade do produto: ");
String dataValidade = scanner.nextLine();
scanner.nextLine();
ProdutoPerecivel produtoPerecivel = new ProdutoPerecivel(nome, preco, quantidade,dataValidade);
listaDeProdutos.add(produtoPerecivel);
contador++;
}
System.out.println(listaDeProdutos);
}
}
Classe Produto
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 "Nome: " + nome + "| " +
"Preço: R$" + preco + " |" +
"Quantidade: " + quantidade;
}
}
Classe ProdutoPerecivel
public class ProdutoPerecivel extends Produto{
private String dataValidade;
public ProdutoPerecivel(String nome, double preco, int quantidade,String dataValidade) {
super(nome, preco, quantidade);
this.dataValidade = dataValidade;
}
@Override
public String toString() {
return super.toString() + " |Data de Validade: " + dataValidade;
}
}
Demonstração do código: