如果从Java访问未初始化的lateinit属性,它是否为空?

时间:2018-06-10 22:48:57

标签: java kotlin kotlin-lateinit

我班上有一个lateinit属性。该类是一个ORM模型,它通过Java中的代码生成的读写层保存到SQLite。

以下是保存相关对象的生成代码的摘录。 MessageDirectionenum

String refmsgDirection = model.msgDirection != null ? model.msgDirection.name() : null;
values.put("`msgDirection`", refmsgDirection != null ? refmsgDirection : null);

运行此代码我收到了以下崩溃报告:

  

异常android.database.sqlite.SQLiteConstraintException: NOT NULL   约束失败:Match.msgDirection(代码1299)

该属性被写为

@NotNull lateinit var msgDirection: MessageDirection

这使我强烈怀疑它是从Java访问null而不立即抛出异常。 这个假设是否正确?

0 个答案:

没有答案