Class CuentaJuventud

java.lang.Object
model.cuentas.CuentaBancaria
model.cuentas.CuentaJuventud

public class CuentaJuventud extends CuentaBancaria
Clase que representa una cuenta bancaria para jovenes. Hereda de CuentaBancaria y ofrece beneficios especiales como tasa preferencial del 2% mensual y beneficios por tiempo limitado (5 años). Los cupos diarios son menores: $500,000 para retiros y $1,000,000 para transferencias.
Author:
ISC Israel de Jesus Mar Parada
See Also:
  • Constructor Details

    • CuentaJuventud

      public CuentaJuventud(String numeroCuenta, String nombreTitular, String documentoTitular, LocalDate fechaNacimiento)
      Constructor para crear una nueva cuenta de juventud. Inicializa la cuenta con fecha de nacimiento del titular, beneficios vigentes por 5 años, cupo diario de retiro de $500,000 y cupo diario de transferencia de $1,000,000.
      Parameters:
      numeroCuenta - Numero unico identificador de la cuenta
      nombreTitular - Nombre completo del titular
      documentoTitular - Documento de identidad del titular
      fechaNacimiento - Fecha de nacimiento del titular
  • Method Details

    • calcularIntereses

      public BigDecimal calcularIntereses()
      Calcula los intereses generados por la cuenta de juventud. Beneficio: tasa preferencial del 2% mensual para jovenes.
      Specified by:
      calcularIntereses in class CuentaBancaria
      Returns:
      Intereses calculados como saldo x 0.02
    • validarCondicionesEspeciales

      public boolean validarCondicionesEspeciales()
      Valida si la cuenta de juventud cumple con sus condiciones especiales. La condicion especial es que el titular sea menor o igual a 25 años.
      Specified by:
      validarCondicionesEspeciales in class CuentaBancaria
      Returns:
      true si el titular tiene 25 años o menos, false en caso contrario
    • calcularEdad

      public int calcularEdad()
      Calcula la edad actual del titular basada en su fecha de nacimiento.
      Returns:
      Edad en años cumplidos
    • beneficioActivo

      public boolean beneficioActivo()
      Verifica si los beneficios de la cuenta de juventud estan activos. Los beneficios estan activos si la fecha actual es anterior a la fecha de fin y el titular cumple con la condicion de edad (menor o igual a 25 años).
      Returns:
      true si los beneficios estan activos, false en caso contrario
    • getFechaNacimientoTitular

      public LocalDate getFechaNacimientoTitular()
      Returns:
      Fecha de nacimiento del titular
    • setFechaNacimientoTitular

      public void setFechaNacimientoTitular(LocalDate fechaNacimientoTitular)
      Parameters:
      fechaNacimientoTitular - Nueva fecha de nacimiento del titular
    • getFechaFinBeneficio

      public LocalDateTime getFechaFinBeneficio()
      Returns:
      Fecha de fin de los beneficios especiales
    • setFechaFinBeneficio

      public void setFechaFinBeneficio(LocalDateTime fechaFinBeneficio)
      Parameters:
      fechaFinBeneficio - Nueva fecha de fin de beneficios