2012-06-08 14 views
20
public abstract class JsonElement extends Object 

Una clase que representa un elemento de Json. Podría ser un JsonObject, un JsonArray, un JsonPrimitive o un JsonNull.Biblioteca Json Parsing Gson de Google: ¿Cuál es la diferencia entre JsonElement y JsonObject?

public final class JsonObject extends JsonElement 

Clase que representa un tipo de objeto en Json. Un objeto consiste en pares nombre-valor donde los nombres son cadenas y los valores son cualquier otro tipo de JsonElement. Esto permite crear un árbol de JsonElements. Los elementos miembros de este objeto se mantienen para que se hayan agregado.

Yay google!

No importa esa pregunta.

Respuesta

19

JsonElement contiene código común para todos los tipos válidos en JSON:

  • JSONObject
  • JSONArray
  • JsonPrimitive (cadena, número, booleano)
  • JsonNull

Esto permite usted escribe un método que toma un JsonElement que funciona con cualquiera de los tipos anteriores.

3

JsonElement es el tipo de base para todos los tipos específicos diferentes; es una clase base con cosas comunes que todos los nodos deberían implementar. Lógicamente, esto hace mucho sentido.

Lo que todos los tipos específicos heredan de JsonElement es algo bueno para ti también. Le permite probar si un objeto es una representación de nodo Json, simplemente verificando si hereda de JsonElement.

La clase JsonElement está disponible para usted como una clase pública, probablemente no porque quiera subclasificarla, sino porque querría probar sus subclases.

Cuestiones relacionadas