Olá, sou iniciante e estou começando a aprender aprender programação orientada a objeto em java. Na apostila da Caelum é proposto um exercicio de criar uma conta de banco por meio de classes, mas decidir ir um pouco além tentando fazer um código que leia as informações do usuário. O código deve estar bem “feio”, então já peço desculpas logo de cara
package estudandoclasses;
import java.util.Scanner;
import java.util.Random;
class Conta {
//ATRIBUTOS
Cliente titular;
int numero;
double saldo;
double salario;
//METODOS:
void depositar (double quantidade) {
saldo += quantidade;
System.out.println("Deposito feito com sucesso");
}
String sacar (double quantidade) {
if (saldo >= quantidade) {
saldo -= quantidade;
return "Saque feito com sucesso!";
} else {
return "Não foi possível realizar o saque.";
}
}
void consultarSaldo () {
System.out.println(saldo);
}
String transferir (Conta destino, double quantidade) {
if (saldo >= quantidade) {
this.saldo -= quantidade;
destino.saldo += quantidade;
return "Transferência executada com sucesso!";
} else {
return "Não foi possível executar a transferência";
}
}
void chegouSalario () {
saldo += salario;
}
}
class Cliente {
String nome;
String sobrenome;
int idade;
int cpf;
Endereco lugar;
}
class Endereco {
// ??int cep;??
String estado;
String cidade;
String bairro;
String rua;
String complemento;
}
class EstudandoClasses {
public static void main(String[] args) {
Conta minhaConta = new Conta();
Conta testeConta = new Conta();
Conta criarConta = new Conta();
Scanner sc = new Scanner(System.in);
Random sort = new Random();
System.out.println("Você quer criar uma conta? Digite: 1 para SIM, 2 para NÃO.");
int escolha = sc.nextInt();
if (escolha == 1) {
//TITULAR
System.out.println("Qual seu primeiro nome?");
criarConta.titular.nome = sc.nextLine();
System.out.println("Qual seu sobrenome?");
criarConta.titular.sobrenome = sc.nextLine();
System.out.println("Qual sua idade?");
criarConta.titular.idade = sc.nextInt();
System.out.println("Qual seu CPF?");
criarConta.titular.cpf = sc.nextInt();
//ENDEREÇO
System.out.println("Qual é seu estado?");
criarConta.titular.lugar.estado = sc.nextLine();
System.out.println("Qual é sua cidade?");
criarConta.titular.lugar.cidade = sc.nextLine();
System.out.println("Qual é o seu bairro?");
criarConta.titular.lugar.bairro = sc.nextLine();
System.out.println("Qual é a sua rua?");
criarConta.titular.lugar.rua = sc.nextLine();
System.out.println("Qual o complemento?");
criarConta.titular.lugar.estado = sc.nextLine();
//NUMERO
criarConta.numero = (sort.nextInt(1000) / 1000) * sort.nextInt(1000) + 1;
//PRINT
System.out.println(criarConta);
} else {
System.exit(0);
}
}
}