What's the purpose of `val` property with `final` modifier?
Recently IntelliJ suggested to add final to one of a val properties. This particular property was initialized in init {} block. I've tried to find out what is the semantics of final val construct and when should I use it, but Kotlin is all about immutability and how val is equivalent of final in Java and so results were so noisy, that I couldn't find anything.
Example:
final val id: Int //
final
suggested by IDE
init { id = 1 }
What is the meaning and possible usages of similar...