Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Dúvida no Ex. 12 da Aula 5 - Exceções e controle de erros

Não consegui identificar o problema no meu código.

package br.com.nicolicontabil.alura;

import java.util.concurrent.ForkJoinPool.ManagedBlocker;

public class TestaDeposita {
    public static void main(String[] args) {
        Conta cp = new ContaCorrente("Laerdes", 123, 100);
        try {
            cp.deposita(-100);
        } catch (ValorInvalidoException e) {
            System.out.println("Valor invalido");
        }
    }

}
3 respostas
solução!

Olá Laercio! Qual erro aparece? Qual o problema? Por favor envie seu método deposita para eu verificar se ele possui algum erro.

Não consigo executar o Run as

package br.com.nicolicontabil.alura;

import java.util.concurrent.ForkJoinPool.ManagedBlocker;

public class TestaDeposita {
    public static void main(String[] args) {
        Conta cp = new ContaCorrente("Laerdes", 123, 100);
        try {
            cp.deposita(-100);
        } catch (ValorInvalidoException e) {
            System.out.println("Valor invalido");
        }
    }

}
package br.com.nicolicontabil.alura;

import java.util.concurrent.ExecutionException;

public abstract class Conta {
    protected double saldo;
    private String nome;
    private int agencia;

    public Conta(String nome, int agencia, double saldo) {
        this.nome = nome;
        this.agencia = agencia;
        this.saldo = saldo;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public int getAgencia() {
        return agencia;
    }

    public void setAgencia(int agencia) {
        this.agencia = agencia;
    }

    public double getSaldo() {
        return saldo;
    }

    public void impreme() {
        System.out.println(nome);
        System.out.println(agencia);
        System.out.printf("O saldo é: %.2f\n", getSaldo());

    }

    public abstract void atualiza(double taxaSelic);

    public void saca(double valorSaque) {
        if (this.saldo >= valorSaque) {
            this.saldo -= valorSaque;
        } else {
            System.out.println("Saldo insuficiente para saque");
        }

    }

    public void deposita(double valorDeposito) throws ValorInvalidoException {

        if (valorDeposito < 0) {
            throw new ValorInvalidoException();
        } else {

            this.saldo += valorDeposito;
        }

    }

    public void setSaldo(double saldo) {
        this.saldo = saldo;
    }

}

Oi Laercio,

tem certeza que você está tentando executar a classe que tem o método main?

Coloque o cursor nessa classe, no Eclipse, e use o ctrl+F11 para executar.