forçar usuario a não sacar alem do limite (duvida)

minha duvida e o seguinte, como posso fazer para que o usuário não possa sacar mais do que o limite, sei quem tem haver com a condição se, mais tem outra forma de fazer! tipo um usuario ter um limite de tentativas de sacar ate que ele seja bloqueado.

public class conta {
	//classe conta especifica que todo objeto da classe deve ter //				
	//atributos da classe conta //
	int numero;
	String nome;
	double saldo;
	double limite;
	
	
		public static void main(String args[]){
	
		new conta();
		
		conta minhaconta;
		
		minhaconta = new conta();
		
		
		minhaconta.nome = "fernando";
		minhaconta.saldo= (10000.0);
		minhaconta.limite=(20000.0);
		System.out.println("saldo fernando"+minhaconta.saldo);
		System.out.println("Limite fernando"+minhaconta.limite);
		
		obrigado.

		
}

}

Não acesse os dados diretamente, use um método para isso…
o ideal é vc encapsular os dados, encapsular é tornar invisivel e inalterado para quem não conhece o funcionamento da sua classe os campos dela…

vc passaria a colocar private antes dos seus campos…

para modificar o saldo que tal um

[code]public void depositar(double valor) {
this.saldo += valor;
}

public void sacar(double valor) {
this.saldo -= valor;
}[/code]

agora vc precisa pensar que pra sacar, é necessario verifica ro saldo… então vc poderia ter algo como

[code]
if (bloqueado())
return;

if(saldo - valor < 0)
falhar();
else {
this.saldo -= valor;
sucesso();
}[/code]

esse metado falhar… pode simplismente incrementar um contador que parte de zero… assim a cada falhar vc sobe 1 valor… ai vc pode a cada sucesso zerar o contador…
o seu método bloqueado() seria um boolean simples, que verifica se contadorFalha > 3 …

e pode fazer um método desbloquearConta(String senha) … para zerar o contador quando a conta é bloqueada…

pronto ja dei muita dica… agora tenta fazer ^^ boa sorte

Como o Lavieri disse, use métodos. Neles você implementa as restrições.

vlz amanha de manha eu vou tentar e passo no forum.

obrigado pela ajuda.!

esqueci,como faço para que o usuario entre com os dados?

[quote=kerbage]esqueci,como faço para que o usuario entre com os dados?

[/quote]

visualmente? String input = JOptionPane.showInputDialog(null,"Digita um valor ...");

via console… busca no google [google]java util Scanner sun[/google]

Edit.: prevendo que vc va perguntar… assim que transforma de String para Integer … int valor = Integer.parseInt(string);

[code]import javax.swing.JOptionPane;

public class conta {
//classe conta especifica que todo objeto da classe deve ter //
//atributos da classe conta //
int numero;
String nome;
private double saldo;
private double limite;
private double valor;
private double sacar;

void depositar (double saldo){
 	this.saldo += valor;

			if ( this.saldo + valor > 0 ){
				
			System.out.println("Ótimo");	
			valor = +1;
			}
			
}



   void sacar (double valor){
	
	this.saldo -= valor;
	

	if (this.saldo - valor < 0){
		
		System.out.println("cheque especial!");
	
		
		
	}
	{
	
		
	
	}

}
public static void main(String args[]){

	new conta();
	
	conta minhaconta;
	
	minhaconta = new conta();
	
	String input = JOptionPane.showInputDialog(null,"Digita um valor ..."); 
	
	
	minhaconta.nome = "fernando";
	minhaconta.saldo= (10000.0);
	minhaconta.limite=(20000.0);
	System.out.println("saldo fernando"+minhaconta.saldo);
	System.out.println("Limite fernando"+minhaconta.limite);
	System.out.println("Sacar fernando"+minhaconta.sacar);
	System.out.println("Saldo fernando"+minhaconta.saldo);

}

}

[/code]
fiz esse dois metodos, mais não retorna nada
void depositar (double saldo){
this.saldo += valor;

				if ( this.saldo + valor > 0 ){
					
				System.out.println("Ótimo");	
				valor = +1;
				}
				
	}
	

	
	   void sacar (double valor){
		
		this.saldo -= valor;
		
 
		if (this.saldo - valor < 0){
			
			System.out.println("cheque especial!");
		
			
	}

no caso do metodo depositar,se o cliente estivesse com o saldo + valor acima de 0, ele iria ganhar mais 1 real cada vez que estivesse no positivo,sera que fiz certo?

[quote=kerbage]

				valor = +1;

no caso do metodo depositar,se o cliente estivesse com o saldo + valor acima de 0, ele iria ganhar mais 1 real cada vez que estivesse no positivo, sera que fiz certo?[/quote]

Não fez certo, você está deixando a conta da pessoa com 1 real.

Há três formas de acrescentar um valor:

valor = valor + 1;
valor += 1;
valor++;

este último acrescenta somente 1.

pobre do cliente! entao como estava fazendo ele ia ficar com 1 real! e no caso do metodo sacar! porque não aparece nada.

obrigado

eu axo que vc poderia criar um Atributo limiteSaque = 3;
e fazer uma logica pra ir diminuindo conforme os saques o mesmo vale para a qntidade de dinheiro que pode ser sacado no dia.

Eu aprendi muito lendo este artigo:

http://blog.caelum.com.br/2006/09/14/nao-aprender-oo-getters-e-setters/

Deve responder algumas de suas duvidas. Se vc tentar fazer uns testes unitarios então, fica melhor ainda.