Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

[Projeto] Desafio resolvido

package desafio.construtores;

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 double getPreco() {
        return preco;
    }

    public int getQuantidade() {
        return quantidade;
    }

    @Override
    public String toString() {
        return """
                Produto: %s | Preço: %.2f | Quantidade: %d | Total: %.2f""".formatted(nome, preco, quantidade, (preco * quantidade));
    }
}
package desafio.construtores;

import java.time.LocalDateTime;

public class ProdutoPerecivel extends Produto {
    LocalDateTime dataCadastro;
    LocalDateTime dataValidade;


    public LocalDateTime getDataCadastro() {
        return dataCadastro;
    }

    public LocalDateTime getDataValidade() {
        return dataValidade;
    }

    public boolean estaVencido(){
        return dataCadastro.isBefore(dataValidade);
    }

    @Override
    public String toString() {
        return """
                Produto Perecivel: %s | Preço: %.2f | Quantidade: %d | Total: %.2f | Vencimento: %s"""
                .formatted(super.getNome(), super.getPreco(), super.getQuantidade(), (super.getPreco() * super.getQuantidade()),
                        (estaVencido() ? "Sim" : "Não"));
    }
}
package desafio.construtores;

import java.util.ArrayList;

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

        Produto p1 = new Produto("Iphone 15", 2999.90, 10);
        Produto p2 = new Produto("Iphone 16", 4999.90, 10);
        Produto p3 = new Produto("Iphone 17", 7999.90, 10);

        produtos.add(p1);
        produtos.add(p2);
        produtos.add(p3);

        System.out.println("Tamanho da Lista de Produtos: " + produtos.size());
        System.out.println("Produto: " + produtos.get(2).getNome());

        System.out.println("Imprimindo a Lista de Produtos:");
        for (Produto produto : produtos) {
            System.out.println(produto);
        }

        ProdutoPerecivel perecivel = new ProdutoPerecivel("Leite", 18.59, 10);
        System.out.println("Imprimindo Produto Precevivel: ");
        System.out.println(perecivel);

    }
}

Resultado Esperado:

Tamanho da Lista de Produtos: 3
Produto: Iphone 17
Imprimindo a Lista de Produtos:
Produto: Iphone 15 | Preço: 2999,90 | Quantidade: 10 | Total: 29999,00
Produto: Iphone 16 | Preço: 4999,90 | Quantidade: 10 | Total: 49999,00
Produto: Iphone 17 | Preço: 7999,90 | Quantidade: 10 | Total: 79999,00
Imprimindo Produto Precevivel: 
Produto Perecivel: Leite | Preço: 18,59 | Quantidade: 10 | Total: 185,90 | Vencimento: Não
3 respostas

Boa tarde pessoal
Ainda aguardando avaliação, está sendo bastante importante a analises dos senhores(as).

Obrigado!

solução!

Oii, Aldeny! Tudo bem?

Fico muito feliz em ver sua dedicação nos desafios práticos. É através dessa mão na massa que os conceitos de Orientação a Objetos ficam claros.

Seu projeto ficou muito bem estruturado. Gostaria de destacar alguns pontos positivos na sua implementação:

  • Uso de Text Blocks e formatted: Você utilizou as """ """ para organizar o toString, o que deixa o código muito mais legível.
  • Lógica de Negócio: A inclusão do cálculo de valor total (preco * quantidade) diretamente na exibição do produto foi um excelente toque adicional.
  • Herança e super: Você aplicou corretamente a chamada do construtor da classe mãe e o uso de métodos como super.getNome() pra acessar os atributos privados.

Parabéns pelo empenho e continue compartilhando sua evolução no fórum.

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

Bom dia Lorena, obrigado pela sua avaliação e incentivo, sinto-me que não estou só nesse processo de aprendizado!
Gratidão!