在 java 里,我一般用反射遍历所有 Field,并查看是否为 null
Example example = new Example();
// 这里解析一些文本并给 example 的成员变量赋值
// do something...
// 检测是否所有变量都被初始化
Field[] fields = Example.class.getFields()
for (Field field : fields) {
try {
Object o = field.get(example);
if (o == null) {
throw new Exception();
}
} catch (IllegalAccessException ignored) {
}
}
kotlin 代码中,所有成员变量都用了 lateinit 修饰符, 那有没有类似的方法可以,检测所有变量是否被 initialized