class EmailNotificacion(val remitente: String) : Notificacion {
private var estadoEnvio = "Pendiente"
private var exito = false
// Sobrescribir propiedad de la interface
override val tipo: String = "Email"
override fun enviar(destinatario: String, mensaje: String) {
println("📧 Enviando email de: $remitente")
println(" Para: $destinatario")
println(" Mensaje: $mensaje")
estadoEnvio = "Enviado"
exito = true
}
override fun obtenerEstado(): String = estadoEnvio
override fun fueExitoso(): Boolean = exito
}
info override es obligatorio para implementar miembros de la interface
Usar : Notificacion para implementar
Propiedades privadas para mantener estado
Implementación específica para emails
Interfaces no tienen constructor
play_arrow Uso:
val notif = EmailNotificacion("[email protected]")
notif.enviar("[email protected]", "Bienvenido")