Boa noite, seguem as seguintes classes começando pela classe Conta:
[code]package entity;
import java.util.Scanner;
public class Conta {
private Integer numero;
private Double saldo;
private Double limite;
Cliente titular;
private static int contador = 0;
public Conta(Cliente titular) {
this.titular = titular;
contador++;
System.out.println("Cliente de numero: " + contador);
}
public Conta(){
}
public Cliente getTitular() {
return titular;
}
public Integer getNumero() {
return numero;
}
public void setNumero(Integer numero) {
this.numero = numero;
}
public Double getSaldo() {
return saldo;
}
public void setSaldo(Double saldo) {
this.saldo = saldo;
}
public Double getLimite() {
return limite;
}
public void setLimite(Double limite) {
this.limite = limite;
}
public static int getContador() {
return contador;
}
public void deposita(Double valor) {
this.saldo += valor;
System.out.println("Deposito efetuado");
}
public boolean saca(Double valor) {
if (valor < saldo + limite) {
this.saldo -= valor;
System.out.println("Saque efetuado");
return true;
}else {
System.out.println("Saldo insuficiente");
return false;
}
}
public boolean transfere(Conta destino, Double valor) {
boolean retira = this.saca(valor);
if (retira == true) {
destino.deposita(valor);
System.out.println("Transferência efetuada");
return true;
}else {
System.out.println("Saldo insuficiente");
return false;
}
}
static void mostra() {
System.out.println("Numero de clientes: " + getContador());
}
public Conta lerDados() {
Conta n = new Conta();
Scanner input = new Scanner(System.in);
System.out.println("Informe o numero de inscrição:");
n.setNumero(new Integer(input.nextLine()));
System.out.println("Saldo do cliente:");
n.setSaldo(new Double(input.nextLine()));
System.out.println("Limite de sua conta:");
n.setLimite(new Double(input.nextLine()));
return n;
}
}[/code]
Classe Cliente:
[code]package entity;
import java.util.Scanner;
public class Cliente {
private String nome;
private String cpf;
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getCpf() {
return cpf;
}
public void setCpf(String cpf) {
this.cpf = cpf;
}
public Cliente lerCliente() {
Cliente e = new Cliente();
Scanner input = new Scanner(System.in);
System.out.println("Nome do cliente:");
e.setNome(input.nextLine());
System.out.println("Cpf do cliente:");
e.setCpf(input.nextLine());
return e;
}
}
[/code]
Finalizando classe Main:
[code]package entity;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Cliente marcos = new Cliente();
Conta c = new Conta(marcos);
marcos = marcos.lerCliente();
System.out.println("Nome do cliente: " + marcos.getNome());
System.out.println("CPF do cliente: " + marcos.getCpf());
c = c.lerDados();
System.out.println("Numero de inscrição: " + c.getNumero());
System.out.println("Saldo: " + c.getSaldo());
System.out.println("Limite: " + c.getLimite());
Cliente rachel = new Cliente();
Conta r = new Conta(rachel);
Cliente monica = new Cliente();
Conta m = new Conta(monica);
}
}[/code]
Minha dúvida é se eu posso fazer posso chamar o método scanner das duas classes uma única vez e como dar resultados de um método como o deposita(Double valor) por exemplo, informando o quanto foi depositado e saldo após depósito.
Obrigado.