Junior — Middle
¿Puedes enumerar y describir los constructores disponibles para la clase sellada?
sobes.tech AI
Respuesta de la IA
La clase sellada en Kotlin es una clase que restringe la herencia: todas las subclases deben ser declaradas en el mismo archivo.
En cuanto a los constructores para clases selladas:
- La propia clase sellada puede tener constructores, como una clase normal.
- Las subclases de la clase sellada pueden tener sus propios constructores.
- Normalmente, la clase sellada se declara como abstracta, y su constructor puede ser protegido o público.
Ejemplo:
sealed class Result {
data class Success(val data: String) : Result()
data class Error(val error: Throwable) : Result()
}
Aquí, la clase sellada Result no tiene un constructor explícito, pero las subclases Success y Error tienen sus propios constructores con parámetros.
Por lo tanto, la clase sellada en sí misma puede tener constructores, pero generalmente son los constructores de sus herederos los que importan, ya que definen las variantes específicas.