

kotlin的String声明的属性通过gson解析服务端返回的数据后变为null,但是String声明的变量应该不能为null,为什么没有报错?
Kotlin中的非空类型String在正常情况下无法赋值为null,但在使用Gson解析JSON数据时,即使属性声明为非空String,解析后却得到了null,而程序没有抛出异常。Gson在反序列化时,如果JSON中对应的字段缺失或为null,而目标字段是非空类型,Gson可能会忽略Kotlin的非空约束,直接将字段设置为null,因为它是通过反射直接操作字段,而不是通过构造方法或其他初始化逻辑。如果数据类的属性有默认值,即使JSON中该字段缺失,Gson可能会使用默认值,但这种情况不会导致null。
