我发现这个问题以某种方式在 Kotlin 中实现了空对象模式。我通常在 Java 中做一些不同的事情:
class MyClass {
static final MyClass INVALID = new MyClass();
public MyClass() {
// empty
}
}
这样,我总是可以MyClass.INVALID
用作空对象。
如何在 Kotlin 中实现这种风格?
我摆弄了这样的事情:
data class MyClass(val id: Int) {
object INVALID: MyClass {
}
}
但这甚至无法编译。