我正在连接到一个发送多种不同JSON对象的网络服务。我计划使用GSON库将其转换为POJOs,而不是使用Java的JSONObject。我不想为每个可能的JSON服务响应创建大量类(每个类只处理一种情况),而是想要一个通用的Java对象来保存所有可能性:
public class GenericJSONResponse{
public long objectKey;
public GenericJSONResponse subObject1;
public String description;
// ...
}
我认为这是一个好方法,因为由服务器发送的属性变化非常大。所有服务器响应仅包括可能的GenericJSONResponse属性的子集。如果未填充属性会占用内存吗,即使它们为空?我的通用对象将具有许多未使用的属性,我不希望它们占用宝贵的内存。
null
,而且它们会占用一些内存,取决于 JVM 的位数(32 位 vs 64 位),通常是 4 或 8 字节。 - Katona