1
resposta

Desafio: hora da prática

package Desafio6;

import java.util.ArrayList;

public class Principal {
    public static void main(String[] args) {
        Produto produto1 = new Produto("Chocolate", 10, 1);

        Produto produto2 = new Produto("pão", 0.50, 10);

        Produto produto3 = new Produto("Cerveja", 7, 2);

        ArrayList<Produto> listaDeProdutos = new ArrayList<>();
        listaDeProdutos.add(produto1);
        listaDeProdutos.add(produto2);
        listaDeProdutos.add(produto3);

        System.out.println(listaDeProdutos);
        System.out.println("tamanho é: " + listaDeProdutos.size());

        ProdutoPerecivel produtoPerecivel = new ProdutoPerecivel("Maçã", 1, 2, "2026-1-30");
        System.out.println(produtoPerecivel);

    }
}
package Desafio6;

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 "Produtos, valor e quantidade: " + this.getNome() + ", o valor e " + this.getPreco() + ", e a quantidade e " + this.getQuantidade();
    }
}
package Desafio6;

public class ProdutoPerecivel extends Produto{

    String dataDeValidade;

    public ProdutoPerecivel(String nome, double preco, int quantidade, String dataDeValidade) {
        super(nome, preco, quantidade);
        this.dataDeValidade = dataDeValidade;
    }
    @Override
    public String toString() {
        return "Produtos, valor e quantidade: " + this.getNome() + ", o valor e " + this.getPreco() + ", e a quantidade e " + this.getQuantidade() + ", e a validade e " + this.dataDeValidade;
    }
}
1 resposta

Olá, Alfredo! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de herança para estender a classe Produto, utilizou muito bem o ArrayList para armazenar e manipular os objetos criados e ainda compreendeu a importância da sobrescrita do método toString para exibir informações de forma personalizada.

Uma sugestão para o futuro seria implementar um cálculo automático do valor total de cada produto (preço × quantidade), tornando a saída mais informativa. Assim:

@Override
public String toString() {
    double valorTotal = this.getPreco() * this.getQuantidade();
    return "Produtos, valor e quantidade: " + this.getNome() +
           ", o valor unitário é " + this.getPreco() +
           ", a quantidade é " + this.getQuantidade() +
           ", e o valor total é " + valorTotal;
}

Isso faz com que o programa apresente não apenas os dados básicos, mas também o custo total de cada item.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

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