3
我有一個名爲UserManager
Kotlin - 如何從一個接口「延遲」一個var overrided?
interface UserManager {
var user:User
/* ... */
}
一個接口和一個叫UserManagerImpl
類,實現了UserManager
class UserManagerImpl : UserManager {
override var user: User // = must provide an User object
/* ... */
}
這裏是我的問題:
如何允許其他類設置在User
在任何時間(即不提供初始User
對象與屬性聲明並讓另一個類創建並提供User
實例)?
採取計數
- 接口不能有lateinit性能
- 我想
User
是一個非空值,所以沒有可空屬性(User?
) - 我想使用字段訪問而不是申報,並在接口中使用
setUser(User)
和getUser()
方法
優秀@ mfulton26!我試圖使用覆蓋lateinit var user:User'而不是你的方法。 :) – regmoraes
我想在編譯器應該有一個更好的診斷錯誤的關鍵字順序 – voddan