1
resposta

[Projeto] Desafio: hora da prática

Colocando o resultado da conclusão do desafio 2!
Classe Principal, onde adicionei os produtos na ArrayList e imprimi o tamanho da Lista com o produto na posição 0:

import java.util.ArrayList;

public class Principal {
    public static void main(String[] args) {
        ArrayList<Produto> listaProdutos = new ArrayList<>();

        Produto produto1 = new Produto("Sabonete", 15.99, 5);
        Produto produto2 = new Produto("Desodorante", 10.49, 8);
        Produto produto3 = new Produto("Televisão", 3000.00, 2);
        ProdutoPerecivel produto4 = new ProdutoPerecivel("Leite", 4.80,3, "13/11/2025");

        listaProdutos.add(produto1);
        listaProdutos.add(produto2);
        listaProdutos.add(produto3);
        listaProdutos.add(produto4);

        System.out.println("Tamanho da lista: " + listaProdutos.size());
        System.out.println("Produto na posição 0: " + listaProdutos.get(0).getNome());

        for (Produto p : listaProdutos) {
            System.out.println(p);
        }
    }
}
******************************************************************************
Classe Produto, onde colocamos os atributos de cada produto:

 import java.util.ArrayList;

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

        public String getNome() {
            return nome;
        }

        public void setNome(String nome) {
            this.nome = nome;
        }

        public double getPreco() {
            return preco;
        }

        public void setPreco(double preco) {
            this.preco = preco;
        }

        public int getQuantidade() {
            return quantidade;
        }

        public void setQuantidade(int quantidade) {
            this.quantidade = quantidade;
        }

        @Override
        public String toString() {
            return "Produto: " + nome + " |" + " Preço " + preco + " |" + " Quantidade " + quantidade + " |";
        }
    }
****************************************************************************************
Classe Produto Perecivel
onde foi adicionado o atributo de Data de Validade.	
    
public class ProdutoPerecivel extends Produto{
    public String dataDeValidade;

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

    public String getDataDeValidade() {
        return dataDeValidade;
    }

    public void setDataDeValidade(String dataDeValidade) {
        this.dataDeValidade = dataDeValidade;
    }

    @Override
    public String toString() {
        return super.toString() + " Data de Validade " + dataDeValidade;
    }
}

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta

Oi, Ygor! Como vai?

Agradeço por compartilhar.

Gostei do jeito que você estruturou as classes e mostrou o uso da lista. A herança com ProdutoPerecivel ficou clara e sua impressão dos elementos da lista demonstra boa organização. Ótimo ver seu avanço no desafio.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!