class CuentaBancaria {
// Atributos privados
private long numeroCuenta;
private double saldo;
// Constructor
CuentaBancaria
(long numeroCuenta,
String titular,
double saldo
) { this.numeroCuenta = numeroCuenta;
this.titular = titular;
this.saldo = saldo;
}
// Métodos getter
public long getNumeroCuenta() { return numeroCuenta; }
public String getTitular
() { return titular
; } public double getSaldo() { return saldo; }
// Métodos setter
public void setNumeroCuenta(long numeroCuenta) { this.numeroCuenta = numeroCuenta; }
public void setTitular
(String titular
) { this.
titular = titular
; } public void setSaldo(double saldo) { this.saldo = saldo; }
// Método para depositar dinero
public void depositar(double cantidad) {
if (cantidad > 0) saldo += cantidad;
}
// Método para retirar dinero
public boolean retirar(double cantidad) {
if (cantidad > 0 && saldo >= cantidad) {
saldo -= cantidad;
return true;
}
return false;
}
}
class AppCuentaBancaria {
// Método main para pruebas
public static void main
(String[] args
) { CuentaBancaria cuenta = new CuentaBancaria(123456789L, "Juan", 5000.0);
System.
out.
println("Número de cuenta: " + cuenta.
getNumeroCuenta()); System.
out.
println("Titular: " + cuenta.
getTitular()); System.
out.
println("Saldo: " + cuenta.
getSaldo());
cuenta.depositar(1500.0);
System.
out.
println("Saldo después del depósito: " + cuenta.
getSaldo());
boolean retiroExitoso = cuenta.retirar(2000.0);
System.
out.
println("Retiro exitoso: " + retiroExitoso
); System.
out.
println("Saldo después del retiro: " + cuenta.
getSaldo()); }
}
Y2xhc3MgQ3VlbnRhQmFuY2FyaWEgewogICAgLy8gQXRyaWJ1dG9zIHByaXZhZG9zCiAgICBwcml2YXRlIGxvbmcgbnVtZXJvQ3VlbnRhOwogICAgcHJpdmF0ZSBTdHJpbmcgdGl0dWxhcjsKICAgIHByaXZhdGUgZG91YmxlIHNhbGRvOwoKICAgIC8vIENvbnN0cnVjdG9yCiAgICBDdWVudGFCYW5jYXJpYShsb25nIG51bWVyb0N1ZW50YSwgU3RyaW5nIHRpdHVsYXIsIGRvdWJsZSBzYWxkbykgewogICAgICAgIHRoaXMubnVtZXJvQ3VlbnRhID0gbnVtZXJvQ3VlbnRhOwogICAgICAgIHRoaXMudGl0dWxhciA9IHRpdHVsYXI7CiAgICAgICAgdGhpcy5zYWxkbyA9IHNhbGRvOwogICAgfQoKICAgIC8vIE3DqXRvZG9zIGdldHRlcgogICAgcHVibGljIGxvbmcgZ2V0TnVtZXJvQ3VlbnRhKCkgeyByZXR1cm4gbnVtZXJvQ3VlbnRhOyB9CiAgICBwdWJsaWMgU3RyaW5nIGdldFRpdHVsYXIoKSB7IHJldHVybiB0aXR1bGFyOyB9CiAgICBwdWJsaWMgZG91YmxlIGdldFNhbGRvKCkgeyByZXR1cm4gc2FsZG87IH0KCiAgICAvLyBNw6l0b2RvcyBzZXR0ZXIKICAgIHB1YmxpYyB2b2lkIHNldE51bWVyb0N1ZW50YShsb25nIG51bWVyb0N1ZW50YSkgeyB0aGlzLm51bWVyb0N1ZW50YSA9IG51bWVyb0N1ZW50YTsgfQogICAgcHVibGljIHZvaWQgc2V0VGl0dWxhcihTdHJpbmcgdGl0dWxhcikgeyB0aGlzLnRpdHVsYXIgPSB0aXR1bGFyOyB9CiAgICBwdWJsaWMgdm9pZCBzZXRTYWxkbyhkb3VibGUgc2FsZG8pIHsgdGhpcy5zYWxkbyA9IHNhbGRvOyB9CgogICAgLy8gTcOpdG9kbyBwYXJhIGRlcG9zaXRhciBkaW5lcm8KICAgIHB1YmxpYyB2b2lkIGRlcG9zaXRhcihkb3VibGUgY2FudGlkYWQpIHsKICAgICAgICBpZiAoY2FudGlkYWQgPiAwKSBzYWxkbyArPSBjYW50aWRhZDsKICAgIH0KCiAgICAvLyBNw6l0b2RvIHBhcmEgcmV0aXJhciBkaW5lcm8KICAgIHB1YmxpYyBib29sZWFuIHJldGlyYXIoZG91YmxlIGNhbnRpZGFkKSB7CiAgICAgICAgaWYgKGNhbnRpZGFkID4gMCAmJiBzYWxkbyA+PSBjYW50aWRhZCkgewogICAgICAgICAgICBzYWxkbyAtPSBjYW50aWRhZDsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KfQoKY2xhc3MgQXBwQ3VlbnRhQmFuY2FyaWEgewogICAgLy8gTcOpdG9kbyBtYWluIHBhcmEgcHJ1ZWJhcwogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIEN1ZW50YUJhbmNhcmlhIGN1ZW50YSA9IG5ldyBDdWVudGFCYW5jYXJpYSgxMjM0NTY3ODlMLCAiSnVhbiIsIDUwMDAuMCk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJOw7ptZXJvIGRlIGN1ZW50YTogIiArIGN1ZW50YS5nZXROdW1lcm9DdWVudGEoKSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJUaXR1bGFyOiAiICsgY3VlbnRhLmdldFRpdHVsYXIoKSk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJTYWxkbzogIiArIGN1ZW50YS5nZXRTYWxkbygpKTsKICAgICAgICAKICAgICAgICBjdWVudGEuZGVwb3NpdGFyKDE1MDAuMCk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJTYWxkbyBkZXNwdcOpcyBkZWwgZGVww7NzaXRvOiAiICsgY3VlbnRhLmdldFNhbGRvKCkpOwogICAgICAgIAogICAgICAgIGJvb2xlYW4gcmV0aXJvRXhpdG9zbyA9IGN1ZW50YS5yZXRpcmFyKDIwMDAuMCk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJSZXRpcm8gZXhpdG9zbzogIiArIHJldGlyb0V4aXRvc28pOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiU2FsZG8gZGVzcHXDqXMgZGVsIHJldGlybzogIiArIGN1ZW50YS5nZXRTYWxkbygpKTsKCSBTeXN0ZW0uZXhpdCgwKTsKICAgIH0KfQo=