Если я использовал пример из документов ,
class SomeActivity : AppCompatActivity() {
sealed class Expr
data class Const(val number: Double) : Expr()
data class Sum(val e1: Expr, val e2: Expr) : Expr()
object NotANumber : Expr()
}
не компилируется, с ошибкой:
Cannot access '<init>', it is private in 'Expr'.
Тем не менее, перемещение его вне класса включения приводит к компиляции:
sealed class Expr
data class Const(val number: Double) : Expr()
data class Sum(val e1: Expr, val e2: Expr) : Expr()
object NotANumber : Expr()
class SomeActivity : AppCompatActivity() {
}
Почему это так? Это намеренное поведение? Документы, кажется, не упоминают об этом.