sealed class vs sealed interface