1
resposta

[Projeto] Desafio: hora da prática - Construtores

package br.com.exercicio.produto.model;

import java.text.DecimalFormat;

public class Produto {

    private String nome;
    private double preco;
    private int quantidade;

    // construtor vazio
    public Produto() {

    }

    // construtor
    public Produto(String nome, double preco, int quantidade) {
        this.nome = nome;
        this.preco = preco;
        this.quantidade = quantidade;
    }

    // getters e setters
    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() {
        DecimalFormat df = new DecimalFormat("####.00");
        String precoFromatado = df.format(this.getPreco());
        return "Produto: " + this.getNome() + " | Preço: R$" + precoFromatado + " | Quantidade: " + this.getQuantidade();
    }
}
package br.com.exercicio.produto.model;

import java.text.DecimalFormat;
import java.time.LocalDate;

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

    public String getDataValidade() {
        return dataValidade;
    }

    @Override
    public String toString() {
        DecimalFormat df1 = new DecimalFormat("####.00");
        String precoFromatado1 = df1.format(this.getPreco());
        return "Produto: " + this.getNome() + " | Preço: R$" + precoFromatado1 + " | Quantidade: " + this.getQuantidade() + " | Validade: " + this.getDataValidade();
    }
}
package br.com.exercicio.produto.principal;

import br.com.exercicio.produto.model.Produto;
import br.com.exercicio.produto.model.ProdutoPerecivel;

import java.util.ArrayList;

public class Principal {
    public static void main(String[] args) {

        Produto produto = new Produto();
        produto.setNome("Impressora");
        produto.setPreco(900.00);
        produto.setQuantidade(1);
        Produto produto1 = new Produto("Notebook", 2500.00, 2);
        Produto produto2 = new Produto("Celular", 1500.00, 3);
        Produto produto3 = new Produto("Televisão", 3000.00, 2);

        ProdutoPerecivel produtoPerecivel = new ProdutoPerecivel("Carne", 40.00, 2, "30/11/2025");


        ArrayList<Produto> listaDeProdutos = new ArrayList<>();
        listaDeProdutos.add(produtoPerecivel);
        listaDeProdutos.add(produto);
        listaDeProdutos.add(produto1);
        listaDeProdutos.add(produto2);
        listaDeProdutos.add(produto3);
        System.out.println("Tamanho da lista: " + listaDeProdutos.size());
        System.out.println("Segundo produto da lista: " + listaDeProdutos.get(1));

        for (Produto p : listaDeProdutos) {
            System.out.println(p);
        }

    }
}

Saída:

Tamanho da lista: 5
Segundo produto da lista: Produto: Impressora | Preço: R$900,00 | Quantidade: 1
Produto: Carne | Preço: R$40,00 | Quantidade: 2 | Validade: 30/11/2025
Produto: Impressora | Preço: R$900,00 | Quantidade: 1
Produto: Notebook | Preço: R$2500,00 | Quantidade: 2
Produto: Celular | Preço: R$1500,00 | Quantidade: 3
Produto: Televisão | Preço: R$3000,00 | Quantidade: 2

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

Olá, Aline! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o conceito de herança para especializar a classe Produto, utilizou muito bem o método toString() para personalizar a saída no console e ainda compreendeu a importância de coleções para organizar e manipular múltiplos objetos de forma eficiente.

Permaneça postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

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!