Я думаю, что вы хотите здесь . Используя аннотации, вы можете сказать GSON, что mySuperCoolField на самом деле называется this_field_is_fun в JSON, и он будет правильно распакован. По крайней мере, я думаю, что это работает и для десериализации.
Если это не сработает, вы можете использовать пользовательские JsonSerializer / JsonDeserializer, которые прекрасно работают, но вы должны обновить их для изменений в вашем классе (например, при добавлении поля). Вы теряете авто-магию.
Самое простое (что было бы некрасиво, но очень чисто и просто, если первое предложение не сработало) было бы просто назвать поле так, чтобы GSON был счастлив, и добавить дополнительные методы доступа с помощью имена, которые вам нравятся, например
public boolean isXXX() {return this.is_XXX;}