1
resposta

Minha resolução

import java.util.Scanner;

// Classe Pai
class Pessoa {
    String nomeUser;
    String tipoDaConta;
    double saldoConta;
}

// Classe Filha
class Conta extends Pessoa {

    // Construtor
    public Conta(String nomeUser, String tipoDaConta) {
        this.nomeUser = nomeUser;
        this.tipoDaConta = tipoDaConta;
        this.saldoConta = 0.0;
    }

    // Métodos da conta
    public void depositar(double valor) {
        if (valor > 0) {
            saldoConta += valor;
            System.out.println("Depósito realizado. Novo saldo: R$ " + saldoConta);
        } else {
            System.out.println("Valor inválido!");
        }
    }

    public void sacar(double valor) {
        if (valor <= saldoConta) {
            saldoConta -= valor;
            System.out.println("Saque realizado. Novo saldo: R$ " + saldoConta);
        } else {
            System.out.println("Saldo insuficiente!");
        }
    }
}

public class Banco {
    public static void main(String[] args) {
        Scanner tecladoScanner = new Scanner(System.in);

        // Criando a conta
        Conta p1 = new Conta("Estevam", "Corrente");

        espaçamento("Inicio do Extrato");

        System.out.println("Nome: " + p1.nomeUser);
        System.out.println("Tipo da conta: " + p1.tipoDaConta);
        System.out.println("Saldo inicial: R$ " + p1.saldoConta);

        espaçamento("Fim do Extrato");

        for(int i = 0; i < 10; i++) {
            // Menu interativo
        System.out.println("Escolha uma opção:");
        System.out.println("1 - Consultar saldo");
        System.out.println("2 - Depositar");
        System.out.println("3 - Sacar");
        System.out.println("4 - Sair");

        int opcao = tecladoScanner.nextInt();

        switch (opcao) {
            case 1:
                System.out.println("Saldo atual: R$ " + p1.saldoConta);
                break;
            case 2:
                System.out.println("Digite o valor para depositar: ");
                double valorDeposito = tecladoScanner.nextDouble();
                p1.depositar(valorDeposito);
                break;
            case 3:
                System.out.println("Digite o valor para sacar: ");
                double valorSaque = tecladoScanner.nextDouble();
                p1.sacar(valorSaque);
                break;
            case 4:
                System.out.println("Saindo...");
                break;
            default:
                System.out.println("Opção inválida!");
            }
        }

        
        


        tecladoScanner.close();
    }

    public static void espaçamento(String mensagem) {
        System.out.println("****************");
        System.out.println(mensagem);
        System.out.println("****************");
    }
}

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta

Oi, Felipe! Como vai?

Gostei muito da sua implementação, principalmente pela forma como você usou herança para estruturar as classes Pessoa e Conta. O código está bem organizado e segue uma boa lógica para o menu interativo no método main.

Continue explorando o uso de métodos e boas práticas de encapsulamento.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!