kev*_*oos 6 constructor parcelable kotlin
我正在创建一个小型测试应用程序来学习 kotlin 方式,但我在 Parcelable 参数方面遇到了一些问题。
我创建了一个抽象类:
abstract class Goal(var number: Int, var name: String) : Parcelable
Run Code Online (Sandbox Code Playgroud)
现在我试图用一个新类来扩展这个类,但是我遇到了各种各样的构造问题:
@Parcelize
class OperationalGoal(number: Int, name: String, var description: String) : Goal(number, name)
Run Code Online (Sandbox Code Playgroud)
它抱怨 和number,name我需要添加valor var。但我已经在我的超类中定义了该属性......
有办法解决这个问题吗?
为了@Parcelize工作,您需要open增加超级的属性并在子级中覆盖它们:
abstract class Goal(open var number: Int, open var name: String) : Parcelable
@Parcelize
class OperationalGoal(override var number: Int, override var name: String, var description: String) : Goal(number, name)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1610 次 |
| 最近记录: |