Вы можете использовать библиотеку Jackson-JSON, чтобы вывести состояние объекта в формате json без реализации интерфейса сериализации в вашем классе и снова загрузить объект, прочитав эти данные json и сопоставив его с типом объекта.
Просто используйте ObjectMapper для этой цели.
Пример:
//do some stuff here with your MyObj object
ObjectMapper mapper = new ObjectMapper();
String jsonState1 = mapper.writeValueAsString(MyObj);
//do some stuff here
String jsonState2 = mapper.writeValueAsString(MyObj);
Если вы хотите сравнить любой из них, вы можете просто сделать:
GenericObject objState1 = mapper.readValue(jsonState1, GenericObject.class);
Тогда сделайте любое сравнение, которое хотите.
Надеюсь, это поможет !!
Обновление
Если вы хотите использовать только стандартную библиотеку Java, у вас нет других
выбор, чем использование Java Reflection API. С помощью этого API вы можете получить доступ
переменные класса и их методы получения и установки, на самом деле
все, что держит класс. Но, к сожалению, вам нужно написать целое
куча кодов для этого. Но это единственный выбор, если вы этого не сделаете
хочу использовать сериализацию Java.