Sistema de vendas [RESOLVIDO]

Pessoal preciso de um empurrãozinho aqui nessa questão.

Criar um sistema de vendas. Para começar precisamos de uma classe para criar objetos do tipo produto
. Para criar objetos do tipo produto teremos que criar uma classe chamada produto , e nessa classe deverá
ter os seguintes itens:

A) Atributos : Nome,PrecodeCompra,QuantidadeEstoque;

B) Encapsule os atributos (Criar os métodos Gets e sets );

C) Um Construtor que inicialize todos atributos ;

D) Um Método Chamado definePrecoVenda, que recebe como parâmetro uma porcentagem,
que irá definir o preço de venda em cima do preço de compra;

E) Um Método chamado vende, que irá receber como parâmetro a quantidade de produtos vendidos,
e que irá decrementar essa quantidade da quantidade em Estoque . Só deixar vender se realmente existir em estoque
a quantidade de produtos solicitados para a venda.

F) Criar um programa , para testar o sistema de vendas, que crie um objeto do tipo produto b[/b] com seus atributos inicializados,
chame o método que define o valor de venda e mostra o valor retornado, mostre a quantidade em estoque, chame o método vende e mostre
o novo valor da quantidade em estoque. Instanciar outro produto b[/b] com valores diferentes e chamar métodos.

Pessoal já comecei fiz o que deu pra mim fazer as questões A e B estão feitas, por favor me ajudem nesse resto, a resolução pode ser coisa bem básica mesmo o mais simples possível

Obrigado !
No Aguardo !

Mande o que vc já fez, se tiver alguma dúvida a galera pode te ajudar!

Bom primeiramente quando for assim Oziel mande o que você fez e qual sua duvida, o pessoal aqui do forum não costuma resolver os problemas e sim ajudar, mas pelo que percebi você pode estar com problema em Construtores.

Mas o que é um Construtor então, é como se fosse uma regra para iniciar sua classe, quando você não define o java cria um default pra você exemplo como ficaria o Construtor da sua Classe, lembrando que uma Classe pode ter vários Construtores, no caso eu criei uma populada e um fiz um default no caso de usuário quiser popular os atributos depois

Construtor populado

public Produto(String nome, double precoDeCompra, int quantidadeDeEstoque){ this.nome = nome; this.precoDeCompra = precoDeCompra; this.quantidadeDeEstoque = quantidadeDeEstoque; }

Construtor defaul

public Produto(){ }

sendo assim a classe Produto ficou da seguinte maneira

[code]class Produto{

private String nome;
private double precoDeCompra;
private int quantidadeDeEstoque;


public Produto(String nome, double precoDeCompra, int quantidadeDeEstoque){
	this.nome = nome;
	this.precoDeCompra = precoDeCompra;
	this.quantidadeDeEstoque = quantidadeDeEstoque;
	}

public Produto(){
}


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

public String getNome(){
	return this.nome;
	}

public void setPrecoDeCompra(double valor){
	this.precoDeCompra = valor;
	}

public double getPrecoDeCompra(){
	return this.precoDeCompra;
	}

public void setQuantidadeDeEstoque(int valor){
	this.quantidadeDeEstoque = valor;
	}

public int getQuantidadeDeEstoque(){
	return this.quantidadeDeEstoque;
	}


public double definePrecoDeVenda(double porcentagem){
	return precoDeCompra += precoDeCompra*(porcentagem/100.0);
	}

public void vende(int quantidade){
	if(this.quantidadeDeEstoque > quantidade){
		this.quantidadeDeEstoque-=quantidade;
	}
	else{
		System.out.println("Quantidade requerida indisponivel no estoque");
	}
	}

}[/code]

onde o metodo definePrecoDeVenda fica

public double definePrecoDeVenda(double porcentagem){ return precoDeCompra += precoDeCompra*(porcentagem/100.0); }

e o metodo vende

public void vende(int quantidade){ if(this.quantidadeDeEstoque > quantidade){ this.quantidadeDeEstoque-=quantidade; } else{ System.out.println("Quantidade requerida indisponivel no estoque"); } }

Depois criei uma classe principal com um metodo main para testar a Classe Produto que ficou

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

Produto p1 = new Produto("Caneta", 1.00, 10);

System.out.println("Nome do Produto: "+p1.getNome());

p1.definePrecoDeVenda(30);
System.out.println("Valor de Venda: "+p1.getPrecoDeCompra());

p1.vende(11);

System.out.println("Quantidade em estoque: "+p1.getQuantidadeDeEstoque());

Produto p2 = new Produto();

p2.setNome("Borracha");
p2.setPrecoDeCompra(0.50);
p2.setQuantidadeDeEstoque(30);

System.out.println("Nome do Produto: "+p2.getNome());
p2.definePrecoDeVenda(20);
System.out.println("Valor de Venda: "+p2.getPrecoDeCompra());
p1.vende(20);
System.out.println("Quantidade em estoque: "+p2.getQuantidadeDeEstoque());


}

}
[/code]

repare que quando criei o Produto1 eu usei o construtor populado e no Produto2 eu usei o Construtor default e populei eles depois, espero ter ajudado

Muito Obrigado Guike vc sabe demais e obrigado pelas suas dicas da próxima vez concerteza irei colocar em prática. Valeu