Criar uma classe Produto, que mantém o estoque de produtos de uma loja, com as seguintes
características: código sequencial, nome do produto, quantidade, tipo, valor do produto.
Abaixo temos 3 exemplos de objetos da classe Produto:
001, Jogo Batalha Naval, 10, jogo, 100,00.
002, Jogo Master, 20, jogo, 150,00.
003, Jogo Quebra-Cabeça, 30, jogo, 50,00.
A classe Produto deve ter 4 construtores (sobrecarga de construtores) que recebem como parâmetro de
entrada :
- apenas o código. Exemplo de chamada para este construtor; new Produto(001);
- o código e o nome do produto. Exemplo de chamada para este construtor; new Produto(001, “Jogo 1”);
- o código, o nome do produto e a quantidade. Exemplo de chamada para este construtor;
new Produto(001,”Jogo 1”, 10); - com todos os dados. Exemplo de chamada para este construtor;
new Produto(001,”Jogo 1”, 10, ´jogo´, 100.00);
A classe Produto deve fornecer os seguintes métodos: - vender: recebe uma quantidade a ser vendida, verifica se tem estoque, se não tem informa, se tem,
diminui do estoque e informa o valor total da venda;
Obs.: O método comprar possui sobrecarga de métodos. - comprar: recebe uma quantidade e o novo valor, acrescentar produtos no estoque e altera o valor;
- comprar: recebe apenas a quantidade a ser acrescentada no estoque, sem alteração de valor;
- consultar: informa todos os dados do produto, e a quantidade em estoque;
- inserir: recebe como parâmetro o nome do produto, a quantidade, o tipo e o valor, e altera os dados do
objeto; - igual: recebe um produto como parâmetro (objeto de Produto), verifica se nome e tipo do objeto corrente
são iguais aos do objeto recebido como parâmetro, retornando true (se forem iguais) ou false.
Criar um programa principal (método main) que recebe as informações do usuário (Scanner ou direto no
código) e cria três ou mais objetos do tipo Produto, cada um de uma forma diferente (usando construtores
diferentes).
Se um objeto for criado, por exemplo, com o construtor que recebe apenas o código, deverá usar
posteriormente o método inserir para atualizar os demais dados do produto.
Para cada objeto criado, usar os métodos: inserir, vender, comprar, igual e consultar.
o que eu ja fiz:
package semana2;
import java.util.Scanner;
public class produto {
int cod, quant, idade, escolha;
String nome, tipo, nomep;
double valor;
public produto(int cod, String nome) {
this.cod = cod;
this.nome = nome;
}
public produto(int cod, String nome, int quant) {
this.cod = cod;
this.nome = nome;
this.quant = quant;
}
public produto(int cod, String nome, int quant, String tipo) {
this.cod = cod;
this.nome = nome;
this.quant = quant;
this.tipo = tipo;
}
public produto(int cod, String nome, int quant, String tipo, double valor) {
this.cod = cod;
this.nome = nome;
this.quant = quant;
this.tipo = tipo;
this.valor = valor;
}
void vender(int num){
if (num < quant){
quant = quant - num;
}
else {
System.out.println("nao ha a quantidade suficiente de produtos.");
}
}
void comprar(int nume,int newval){
quant = quant + nume;
valor = newval;
}
void comprar(int nume){
quant = quant + nume;
}
void consultar(){
}
void inserir(String nome, int quant, String tipo, double valor){
}
void igual() {
}
public void usuario(int cod, String nome, int quant, String tipo, double valor) {
this.cod = cod;
this.nome = nome;
this.quant = quant;
this.tipo = tipo;
this.valor = valor;
}
public static void main (String[] args) {
produto p1 = new produto(001, "valorant", 80, "jogo", 100);
produto p2 = new produto(002, "cs:go", 40);
produto p3 = new produto(003, "overwatch");
Scanner sc = new Scanner(System.in);
usuario pessoa = new usuario();
pessoa.cod = 003;
pessoa.nome = "gun";
pessoa.quant = 200;
pessoa.tipo = "jogo";
pessoa.valor = 30;
}
}