Tag: 单例

Kotlin的单身人士是否安全?

Kotlin单身人士(更具体地说是对象声明)是否是线程安全的? 如果不是,在Kotlin中编写线程安全单例的最佳做法是什么? 我猜想他们是,但是我一直没能在文档中找到任何明确的声明。

Kotlin嵌套对象类

好,所以我现在开始学kotlin一个星期了,我喜欢这个语言:除了扩展功能的伟大功能之外,我觉得他们缺乏像java实用类(xxxUtil)这样的命名空间的创建方法。 我最近开始使用这个问题,我不知道是否正确,我想从Kotlin有经验的用户那里得到一些反馈。 这是一个有效和适当的事情待办事项: object RealmDb { private val realmInstance by lazy{ Realm.getInstance(MainApplication.instance) } private fun wrapInTransaction(code:() -> Unit){ realmInstance.beginTransaction(); code.invoke() realmInstance.commitTransaction(); } object NormaNote{ fun create(…) {…} fun update(…) {…} } } 所以,每当我想更新一些正则表达式值到一个Realm数据库,我做了以下几点: RealmDb.NormaNote.create(title.text.toString(), note.text.toString()) 这是常见的事情吗? 有更好的方法吗? 据我了解,这是单身嵌套,我不认为这是有任何问题,我只是不喜欢把这种常见的东西,如需要实例化类中的数据库操作。 在旧的Java我选择静态类

单身系列在Kotlin

我想知道是否有可能在Kotlin反序列化(恢复属性值)的声明对象, 而不必手动分配属性或采取反思 。 以下片段进一步解释: object Foo: Serializable { var propOne: String = "" // … fun persist() { serialize(this) // no problem with serialization } fun restore(bytes: ByteArray) { val fooObj: Foo = deserialize(bytes) as Foo // It seems Kotlin allows us to use singleton as type! // obvioulsly either of the following is wrong: […]