Вызов 20 простых сеттеров - дешевая операция.Это займет всего несколько наносекунд.Я почти уверен, что это не то, что стоит оптимизировать.
Простое задание полей одно за другим уже достаточно оптимизировано.Теоретически, можно очистить объект немного быстрее с помощью инструкций SIMD, но в Java нет способа сделать это.
Существует метод Unsafe.setMemory
, но он работает только для примитивных массивов.,Это ограничение вполне понятно: недопустимо очищать объект со ссылочными полями с помощью массовой операции, потому что разные GC могут потребовать отслеживать обновления для справочных полей по отдельности.
Если вы посмотрите на Arrays.fill
Реализация , она использует простой цикл, который хранит элементы один за другим, и метод не является даже JVM-экземпляром по вышеуказанным причинам.