-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathConta.java
More file actions
executable file
·75 lines (68 loc) · 1.72 KB
/
Conta.java
File metadata and controls
executable file
·75 lines (68 loc) · 1.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/**
* Classe Conta
* @author walter Gandarella
*/
public abstract class Conta {
public static final int OK = 0;
public static final int BLOQ = 1;
private String numero;
private double saldo;
private double limite;
protected int estado;
/**
* Construtor da classe
* @param _numero Número da conta
* @param _saldo Saldo da conta
* @param _limite Limite da conta
*/
public Conta(String _numero, double _saldo, double _limite){
this.numero = _numero;
this.saldo = _saldo;
this.limite = _limite;
this.estado = Conta.OK;
}
/**
* Este construtor chama o primeiro e define o limite como 10% do saldo
* @param _numero Número da conta
* @param _saldo Saldo da conta
*/
public Conta(String _numero, double _saldo){
this(_numero, _saldo, _saldo * .1);
}
/**
* Faz o crédito na conta
* @param _valor Valor a ser creditado na conta
* @return TRUE caso o crédito seja feito e FALSE caso algo saia errado
*/
public boolean creditoConta(double _valor){
if (this.estado == Conta.OK){
this.saldo += _valor;
return true;
} else {
return false;
}
}
/**
* Faz o débito na conta
* @param _valor Valor a ser retirado da conta
* @return TRUE caso o débito seja feito e FALSE caso algo saia errado
*/
public boolean debitoConta(double _valor){
if ((this.estado == Conta.OK) && (this.saldo + this.limite) >= _valor){
this.saldo -= _valor;
return true;
} else {
return false;
}
}
/**
* Imprime o estado da conta
*/
public String toString(){
return "Nº "+this.numero+" está atualmente:\n"+
"Saldo:\t"+this.saldo+"\n"+
"Limite:\t"+this.limite+"\n"+
"Estado:\t"+(this.estado == Conta.OK ? "OK" : "BLOQ")+"\n";
}
public abstract void taxa();
}