Having another issue with 1.9.20. Getting a "Prope...
# getting-started
d
Having another issue with 1.9.20. Getting a "Property must be initialized, be final, or be abstract" error. I have an open class with an uninitialized val that is set in an init, so it is effectively final.
Copy code
open class MyClass {
   override val myVal: MyInnerClass

   init {
     myVal = MyInnerClass()
   }

   inner class MyClass() {
     ...
   }
}
m
Copy code
override val myVal: MyInnerClass = MyInnerClass()
You need not use init block here Also you don't extend base class or interface, so using
override
modifier is error too.
c
override
means "I'm replacing a variable declared by a supertype". Your class has no supertypes, so
override
is forbidden. As @Mikhail said, you can initialize the value directly on declaration.
Copy code
class MyClass {
    val myVal = MyInnerClass()

    inner class MyInnerClass
}
k
This should be an error in older releases, not just 1.9.20.
2
d
Sorry. It does extend a base class. I just didn't list it.