Вот проблема, которую я пытаюсь решить, я пытаюсь использовать тип void как универсальный тип:
class Parent {
private abstract class Item<out T>(val data: T)
// This subclass should contain data
private class ItemContent(val data: String): Item<String>(data)
// This subclass doesn't contain data
private class ItemNoContent: Item<Any?>(null)
}
Некоторые базовые классы, такие как ItemNoContent, не содержат значимых данных, поэтому я делаю ItemNoContent расширяет Item (null). Это работает, но я чувствую, что использование Any? и нуль здесь неуместен. Есть ли более Kotlin способ решить эту необязательную проблему?