Classe principal:
- package contabanco;
- public class Contabanco {
- /**
- *
- * @author ivirton
- * @version 0.1
- * @serial i.v.i.r.t.o.n.
- *
- */
- public static void main(String[] args) {
- Banco b1 = new Banco();
- Cliente c1 = new Cliente();
- b1.parmetro(c1);//chamada de classe para classe
- c1.parametro(b1);//chamada de classe para classe
- c1.iniciar();
- }
- }
Classe Banco
package contabanco;
import java.util.Random;
public class Banco {
//atributos---------------------------------------------------------------------
public int numConta;
protected String tipo;
private float saldo;
private boolean status;
private String dono;
private Cliente banCliente;
public void parmetro(Cliente l){
this.banCliente = l;
}
public void statusAtual(){
Random t = new Random();
int numero = t.nextInt(100);
this.setNumConta(numero);
System.out.println("--------------------------------");
System.out.println("Cliente:" + this.getDono());
System.out.println("conta :"+this.getNumConta());
if(this.getTipo().equals("CC")){
System.out.println("Tipo:conta corrente");
}else if(this.getTipo().equals("CP")){
System.out.println("Tipo:conta Polpança");
}
System.out.println("saldo:" + this.getSaldo());
if(this.getStatus()){
System.out.println("conta ativa!");
}else{
System.out.println("conta inativa!");
}
System.out.println("--------------------------------");
this.banCliente.menuCliente();
}
//metodos ----------------------------------------------------------------------
public void abrirConta(String t){
this.setTipo(t);
this.setStatus(true);
if ("CC".equals(t)) {
this.setSaldo(50);
System.out.println("conta aberta com sucesso!");
this.banCliente.menuCliente();
} else if("CP".equals(t)) {
this.setSaldo(150);
System.out.println("conta aberta com sucesso!");
this.banCliente.menuCliente();
}
}
public void fecharConta(){
if (this.getSaldo()>0){
System.out.println("conta dao pode ser fechada porque ainda tem dinheiro");
this.banCliente.menuCliente();
} else if (this.getSaldo()<0) {
System.out.println("conta nao pode ser aberta porque tem debito");
this.banCliente.menuCliente();
} else {
this.setStatus(false);
System.out.println("conta fechada com sucesso");
}
}
public void depositar( float v){
if (this.getStatus()){
//this.saldo = this.saldo + v;
this.setSaldo(this.getSaldo()+ v);
System.out.println("deposit realiazado na conta de " + this.getDono());
this.banCliente.menuCliente();
}else{
System.out.println("impossivel depositar em uma conta fechada");
this.banCliente.menuCliente();
}
}
public void sacar(float v ){
if (this.getStatus()){
if (this.getSaldo()>=v){
this.setSaldo(this.getSaldo()-v);
System.out.println("saque realizado na conta de "+this.getDono());
this.banCliente.menuCliente();
}else{
System.out.println("saldo insuficiente para saque");
this.banCliente.menuCliente();
}
}else {
System.out.println("imposivel sacar de uma conta fechada");
}
}
//metodos especiais------------------------------------------------------------
public Banco() {
this.saldo = 0;
this.status = false;
}
public void setNumConta(int n){
this.numConta = n;
}
public int getNumConta(){
return this.numConta;
}
public String getTipo(){
return tipo;
}
public void setTipo( String tipo ){
this.tipo = tipo;
}
public String getDono(){
return this.dono;
}
public float getSaldo() {
return saldo;
}
public void setSaldo(float saldo) {
this.saldo = saldo;
}
public void setStatus(boolean status) {
this.status = status;
}
public boolean getStatus(){
return status;
}
public void setDono(String dono) {
this.dono = dono;
}
}
Classe Cliente:
- package contabanco;
- import java.util.Scanner;
- public class Cliente {
- //agregação entre classes.
- private Banco pessoa;
- public void parametro( Banco la ){
- this.pessoa = la;
- }
- public void menuCliente(){
- Scanner tc = new Scanner(System.in);
- int v =0;
- System.out.println("Menu da sua conta");
- System.out.println("1:depositar.");
- System.out.println("2:sacar.");
- System.out.println("3:Strato.");
- System.out.println("4:fecharAplicação.");
- v = tc.nextInt();
- switch(v){
- case 1://depositar
- System.out.println("valor a depositar:");
- float saldo = 0;
- saldo = tc.nextFloat();
- this.pessoa.depositar(saldo);
- break;
- case 2://saca
- System.out.println("valor a sacar:");
- float sa = 0;
- sa = tc.nextFloat();
- this.pessoa.sacar(sa);
- break;
- case 3://Strator
- this.pessoa.statusAtual();
- break;
- case 4:
- System.out.println("Filalizado!");
- break;
- }
- }
- public void iniciar(){
- Scanner tc = new Scanner(System.in);
- System.out.println("Seu nome:");
- String no = tc.next();
- this.pessoa.setDono(no);
- System.out.println("tipo da conta:");
- System.out.println("1:corrente,2:Polpaça.");
- int esc = 0;
- esc = tc.nextInt();
- switch(esc){
- case 1 ://conta corrente.
- this.pessoa.abrirConta("CC");
- break;
- case 2://conta polpaça.
- this.pessoa.abrirConta("CP");
- this.menuCliente();
- break;
- default:
- System.out.println("erro! escolha somente 1ou2. ");
- }
- }
- }

Nenhum comentário:
Postar um comentário