Esta regra sinaliza qualquer sincronização em instâncias de classes baseadas em valor. A sincronização nas classes a seguir dentro de seu aplicativo é desencorajada:
java.lang.Bytejava.lang.Shortjava.lang.Integerjava.lang.Longjava.lang.Floatjava.lang.Doublejava.lang.Booleanjava.lang.Characterjava.lang.Runtime.Versionjava.util.Optionaljava.util.OptionalIntjava.util.OptionalLongjava.util.OptionalDoublejava.time.Instantjava.time.LocalDate LocalDatejava.time.LocalTimejava.time.LocalDateTimejava.time.ZonedDateTimejava.time.ZoneIdjava.time.OffsetTimejava.time.OffsetDateTimejava.time.ZoneOffsetjava.time.Durationjava.time.Periodjava.time.Yearjava.time.YearMonthjava.time.MonthDayjava.time.chrono.MinguoDatejava.time.chrono.HijrahDatejava.time.chrono.JapaneseDatejava.time.chrono.ThaiBuddhistDate
Além disso, a sincronização deve ser evitada na interface java.lang.ProcessHandle, em suas classes de implementação e nas classes de implementação das factories de coleta em java.util: List.of, List.copyOf, Set.of, Set.copyOf, Map.of, Map.copyOf, Map.ofEntries e Map.entry.
Para obter mais informações sobre essas mudanças de JDK, consulte O que há de novo no JDK 16.
Para obter mais informações sobre a mudança de recurso, consulte Avisos para classes baseadas em valor.