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