1
resposta

[Projeto] Projeto controle de estoque

package ControleEstoque;

public class EstoqueException extends RuntimeException {

public EstoqueException(String message) {
    super(message);
}
}
package ControleEstoque;

public class Estoque {

    private String nome;
    private int quantidade;

    public Estoque(int quantidade, String nome) {
        this.quantidade = quantidade;
        this.nome = nome;
    }

    public void vender(int quantidade) throws EstoqueException {

        if(quantidade > this.quantidade || quantidade < 0) {
            throw new EstoqueException("A quantidade de compra excede a quantidade em estoque");
        }

        this.quantidade -= quantidade;
        System.out.printf("Venda realizada. Estoque restante de Camiseta: %d \n", this.quantidade);

    }

    public String getNome() {
        return nome;
    }

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

    public int getQuantidade() {
        return quantidade;
    }

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

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

        Estoque camisa = new Estoque(10, "Camisa");



    try{
        camisa.vender(3);
        camisa.vender(8);

    }catch(EstoqueException ex){
        System.out.println(ex.getMessage());
    }


    }
}
1 resposta

Oi, José! Como vai?

Agradeço por compartilhar.

Gostei da sua implementação do controle de estoque, muito bom notar como você aplicou classes, atributos, métodos e criou uma exceção personalizada para tratar regras de negócio, o que tá bem alinhado com o conteúdo da aula. Isso mostra uma boa compreensão de orientação a objetos e de como proteger o estado do objeto.

Continue explorando esse tipo de validação, pois ela deixa o código mais seguro e organizado.

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