У полей есть серверное и клиентское представление. То есть итоговый тип после сериализации и десериализации. При чём это описано не в виде конкретного типа, а в виде класса типов. Серверное представление учитывается, а вот клиентское... Геттеры и сеттеры почему-то работают с приведением типов указателей, что может плохо сказаться, например, когда сервер прислал вещественное число, а в клиенте ожидается целое.