Ciência e Tecnologia. Em construção..

sábado, 8 de julho de 2017

Aplicação em java simulação de uma conta no banco











Classe principal:


  1. package contabanco;
  2. public class Contabanco {
  3. /**
  4.  *
  5.  * @author ivirton
  6.  * @version 0.1
  7.  * @serial i.v.i.r.t.o.n.
  8.  * 
  9.  */
  10.     
  11.     public static void main(String[] args) {
  12.         
  13.          Banco b1 = new Banco();
  14.          Cliente c1 = new Cliente();
  15.          b1.parmetro(c1);//chamada de classe para classe
  16.          c1.parametro(b1);//chamada de classe para classe
  17.          c1.iniciar();      
  18.     }
  19.   }

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:


  1. package contabanco;
  2. import java.util.Scanner;


  3. public class Cliente {  
  4.     //agregação entre classes.
  5.    private Banco pessoa;
  6.    
  7.    public void parametro( Banco la ){
  8.        this.pessoa = la;
  9.    }
  10.     public void  menuCliente(){
  11.        Scanner tc = new Scanner(System.in);
  12.         int v =0;
  13.         System.out.println("Menu da sua conta");
  14.         System.out.println("1:depositar.");
  15.         System.out.println("2:sacar.");
  16.         System.out.println("3:Strato.");
  17.         System.out.println("4:fecharAplicação.");
  18.         v = tc.nextInt();
  19.         switch(v){
  20.             case 1://depositar
  21.                 System.out.println("valor a depositar:");
  22.                 float saldo = 0;
  23.                 saldo = tc.nextFloat();
  24.                 this.pessoa.depositar(saldo);
  25.                 break;
  26.             case 2://saca
  27.                 System.out.println("valor a sacar:");
  28.                 float sa = 0;
  29.                 sa = tc.nextFloat();
  30.                this.pessoa.sacar(sa);
  31.                 break;
  32.             case 3://Strator
  33.                 this.pessoa.statusAtual();
  34.                 break;
  35.             case 4:
  36.                 System.out.println("Filalizado!");
  37.             break;
  38.                    
  39.         }
  40.         
  41.         
  42.     }
  43.     
  44.     
  45.             
  46.      public void iniciar(){
  47.         Scanner tc = new Scanner(System.in);
  48.                  
  49.                 System.out.println("Seu nome:");
  50.                 String no = tc.next();
  51.                this.pessoa.setDono(no);
  52.                 System.out.println("tipo da conta:");
  53.                 System.out.println("1:corrente,2:Polpaça.");
  54.                 int esc = 0;
  55.                 esc = tc.nextInt();
  56.                 switch(esc){
  57.                     case 1 ://conta corrente. 
  58.                         this.pessoa.abrirConta("CC");
  59.                         break;
  60.                     case 2://conta polpaça.
  61.                         this.pessoa.abrirConta("CP");
  62.                         this.menuCliente();
  63.                         break;
  64.                     default:
  65.            System.out.println("erro! escolha somente 1ou2. ");
  66.                 }
  67.    }
  68.     
  69. }





Nenhum comentário:

Postar um comentário