我已创建Kotlin活动,但无法扩展该活动。我收到以下消息:This type is final, so it cannot be inherited from .如何从Kotlin的Activity中删除final,以便扩展它?
This type is final, so it cannot be inherited from
final
scyqe7ek1#
根据Kotlin文档,类上的open注解与Java的final相反,它允许其他类继承该类。默认情况下,Kotlin中的所有类都是final的。
open class Base { open fun v() {} fun nv() {} } class Derived() : Base() { override fun v() {} }
参考:https://kotlinlang.org/docs/reference/classes.html
qxgroojn2#
默认情况下,Kotlin活动是final的,所以我们不能扩展类。为了克服这个问题,我们必须使活动open成为可扩展的。就像open class BaseCompatActivity : AppCompatActivity() { }一样
open
open class BaseCompatActivity : AppCompatActivity() { }
ufj5ltwl3#
在Kotlin中,类默认为final,这就是类不可扩展的原因。类的open注解与Java的final注解相反:它允许其他类继承这个类。默认情况下,Kotlin中的所有类都是final的。
open class Base(p: Int) class Derived(p: Int) : Base(p)
5jvtdoz24#
class Base
简单添加打开超级/父类:
open class Base
4条答案
按热度按时间scyqe7ek1#
根据Kotlin文档,类上的open注解与Java的final相反,它允许其他类继承该类。默认情况下,Kotlin中的所有类都是final的。
参考:https://kotlinlang.org/docs/reference/classes.html
qxgroojn2#
默认情况下,Kotlin活动是final的,所以我们不能扩展类。为了克服这个问题,我们必须使活动
open
成为可扩展的。就像
open class BaseCompatActivity : AppCompatActivity() { }
一样ufj5ltwl3#
在Kotlin中,类默认为final,这就是类不可扩展的原因。
类的open注解与Java的final注解相反:它允许其他类继承这个类。默认情况下,Kotlin中的所有类都是final的。
5jvtdoz24#
简单添加打开超级/父类: