Arkadii Ivanov
01/13/2020, 12:08 PMby
keyword and make all the delegated methods final
. My use case is as follows:
interface MyInterface {
fun doSomething()
}
internal class MyInterfaceImpl : MyInterface {
override fun doSomething() {
// Do something here
}
}
abstract class MyClass : MyInterface by MyInterfaceImpl() {
abstract fun doSomethingElse()
}
class MyClassImpl : MyClass() {
override fun doSomethingElse() {
// Do something here
}
override fun doSomething() {
// This override should be forbidden
super.doSomething()
}
}
Dominaezzz
01/13/2020, 12:15 PMMyInterfaceImpl.doSomething
final won't cut it?Arkadii Ivanov
01/13/2020, 1:00 PM