Olá,
Estou desenvolvendo um mini sistema bancário, para fins didáticos.
Segue a abaixo as classes
Classe Clientepackage br.com.peres;
public class Cliente {
private String nome;
private String logradouro;
private String telFixo;
private String telCel;
private Login login;
public Cliente(String n, String l, String tf, String tc, String u, String s) {
setNome(n);
setLogradouro(l);
setTelFixo(tf);
setTelCel(tc);
setLogin(u, s);
}
public void setNome(String name) {
nome = name;
}
public String getNome() {
return nome;
}
public void setLogradouro(String log) {
logradouro = log;
}
public String getLogradouro() {
return logradouro;
}
public void setTelFixo(String tel) {
telFixo = tel;
}
public String getTelFixo() {
return telFixo;
}
public void setTelCel(String cel) {
telCel = cel;
}
public String getTelCel() {
return telCel;
}
public void setLogin(String user, String paswd) {
login = new Login(user, paswd);
}
public String getUser() {
return login.getNome();
}
public String getSenha() {
return login.getPaswdUser();
}
}
package br.com.peres;
public class ContaBancaria {
private int ag;
private int cc;
private Cliente dataCliente;
private double saldo;
public ContaBancaria(int agTmp, int ccTmp, Cliente cliTmp) {
setAg(agTmp);
setCc(ccTmp);
setCliente(cliTmp);
saldo = 0;
}
public void setAg(int agTmp) {
ag = agTmp;
}
public int getAg() {
return ag;
}
public void setCc(int ccTmp) {
cc = ccTmp;
}
public int getCc() {
return cc;
}
public void setCliente(Cliente objCli) {
dataCliente = objCli;
}
public Cliente getCliente() {
return dataCliente;
}
/*
* Retorno possiveis: false => erro, nao ocorreu deposito true => valor
* valido, deposito realizado
*/
public boolean deposito(double vlr) {
if (vlr <= 0) {
return false;
}
saldo = saldo + vlr;
return true;
}
public boolean saque(double vlr) {
if (vlr > saldo) {
return false;
}
saldo = saldo - vlr;
return true;
}
public double getSaldo() {
return saldo;
}
}
package br.com.peres;
public class Login {
private String nomeUsuario;
private String senha;
public Login(String nomeUser, String paswd) {
nomeUsuario = nomeUser;
setPaswdUser(paswd);
}
public Login(String nomeUser) {
nomeUsuario = nomeUser;
}
public void setNomeUser(String nameTmp) {
nomeUsuario = nameTmp;
}
public String getNome() {
return nomeUsuario;
}
public void setPaswdUser(String senha) {
this.senha = senha;
}
public String getPaswdUser() {
return senha;
}
}
package br.com.peres;
import java.util.Scanner;
public class Main {
private static Cliente vetCli[];
private static ContaBancaria vetCB[];
private static final int TMH_VETCLI = 100;
private static final int TMH_VETCB = 100;
private static int contCli;
private static int contCB;
public static void main(String[] args) {
contCli = 1;
contCB = 0;
vetCli = new Cliente[TMH_VETCLI];
vetCB = new ContaBancaria[TMH_VETCB];
vetCli[0] = new Cliente("Joao e maria", "Logradouro", "-", "-",
"admin", "1234");
System.out
.println("**************** SISTEMA BANCARIO *******************");
Scanner objScan = new Scanner(System.in);
System.out.println("NOME DO USUARIO.: ");
String objNomeUser = objScan.nextLine();
System.out.println("SENHA DO USUARIO.: ");
String objPaswdUser = objScan.nextLine();
// verifica se existe o usuario
if (contCli == 0) {
System.out.println("Erro: nao possui usuarios cadastrados");
} else {
boolean flag = false;
for (int countCli = 0; countCli < contCli; countCli++) {
if (vetCli[countCli].getUser().equals(objNomeUser)) {
if (vetCli[countCli].getSenha().equals(objPaswdUser)) {
flag = true;
}
}
}
if (flag == false) {
System.out.println("Dados invalidos para acessar o sistema!");
} else {
// se existir o usuario apresenta o proximo menu do sistema
System.out.println("1 - Gerenciamento de Conta");
System.out.println("2 - Gerenciamento de Cliente");
System.out.println("3 - Sair");
int opGR = objScan.nextInt();
if (opGR == 1)
apresentaGrCC();
if (opGR == 2)
apresentaGrCli();
}
}
}
private static void apresentaGrCC() {
Scanner objScan = new Scanner(System.in);
System.out.println("1 - Deposito");
System.out.println("2 - Saque");
System.out.println("3 - Saldo");
System.out.println("4 - Sair");
int opContBanc = objScan.nextInt();
}
private static void apresentaGrCli() {
String nome, log, telf, telc, user, paswd;
Scanner objScan = new Scanner(System.in);
System.out.println("1 - Cadastro");
System.out.println("2 - Consultar");
System.out.println("3 - Alterar");
System.out.println("4 - Excluir");
System.out.println("5 - Sair");
int opContBanc = objScan.nextInt();
if (opContBanc == 1) {
if (contCli > TMH_VETCLI) {
System.out.println("Erro! Vetor cheio.");
} else {
System.out.println("Nome Cliente.: ");
nome = objScan.nextLine();
System.out.println("Logradouro Cliente.: ");
log = objScan.nextLine();
System.out.println("Telefone fixo.: ");
telf = objScan.nextLine();
System.out.println("Telefone celular.: ");
telc = objScan.nextLine();
System.out.println("User.: ");
user = objScan.nextLine();
System.out.println("Senha.: ");
paswd = objScan.nextLine();
vetCli[contCli] = new Cliente(nome, log, telf, telc, user,
paswd);
contCli++;
}
}
}
}
A minha dúvida é se esses métodos na classe Main, estão de acordo com o paradigma da OO?