Когда использовать метод Google Gson tojson, который принимает тип в качестве параметра? public String toJson (Object src, Тип typeOfSrc)

Я пытаюсь преобразовать мой объект в строку JSON с помощью API-интерфейса Gson toJson. Когда я наткнулся на 2 разных API, которые поддерживают одинаковые.

Согласно Документам -

public String toJson (Object src)

Обратите внимание, что этот метод работает нормально, если любое из полей объекта имеет универсальный тип, просто сам объект не должен быть универсального типа.Если объект имеет универсальный тип, используйте вместо него toJson (Object, Type).

public String toJson (Object src, Тип typeOfSrc)

Этот метод должен использоваться, если указанный объект является универсальным типом.

Я использую первый API, который принимает только Object в качестве параметра, однако передает объект общего типа, и я все еще могу успешно получить строку JSON.

Код:

@GET
@Path("/getList")
@Produces(MediaType.APPLICATION_JSON)   
public String getList()     
{       
    Gson gson = new GsonBuilder().create();
    List list = new ArrayList();
    list.add(new Message("kishore", " Bandi "));
    list.add(new Message("test", " values "));
    return gson.toJson(list);   
}

XML, который я получил как ответ:

[
    {
        "name": "kishore",
        "text": " Bandi ",
        "dontSend": "Hope not received",
        "iAmEmpty": ""
    },
    {
        "name": "test",
        "text": " values ",
        "dontSend": "Hope not received",
        "iAmEmpty": ""
    }
]

Тот же самый ответ, даже когда я использовал Параметризованный тип.

Gson gson = new GsonBuilder().create();
        List<String> list = new ArrayList<String>();
        list.add("Kishore");
        list.add("Bandi");
        return gson.toJson(list);

Выход:

["Kishore","Bandi"]

Так каково значение второго API, который принимает тип в качестве параметра?

Ответы на вопрос(1)

Ваш ответ на вопрос