我有这个代码:
class AnyUsernamePersistentNodePath(override val value: String) : AnyPersistenceNodePath {
override val key = "username"
}
Run Code Online (Sandbox Code Playgroud)
和
interface AnyPersistenceNodePath {
val key: String
val value: String
}
Run Code Online (Sandbox Code Playgroud)
到现在为止还挺好.现在我希望value命名构造函数中的参数username,而不是value.但是,显然,保持覆盖接口的属性value.在Kotlin有可能吗?
我知道我能做到:
class AnyUsernamePersistentNodePath(val username: String) : AnyPersistenceNodePath {
override val key = "username"
override val value = username
}
Run Code Online (Sandbox Code Playgroud)
但我想避免它.
只需val从构造函数参数中删除它就可以执行您想要的操作,这样它就是参数而不是成员.你的最后一堂课是:
class AnyUsernamePersistentNodePath(username: String) : AnyPersistenceNodePath {
override val key = "username"
override val value = username
}
Run Code Online (Sandbox Code Playgroud)
你无法改变你真正重写的东西的名称.但是,您可以在构建过程中传递要分配给成员的值,因为我稍微修改了代码版本.
| 归档时间: |
|
| 查看次数: |
853 次 |
| 最近记录: |