On Wed, 6 Sep 2023 20:52:10 GMT, Justin Lu <j...@openjdk.org> wrote: >> Please review this PR and [CSR](https://bugs.openjdk.org/browse/JDK-8315720) >> which refines the spec of `equals()` and `hashCode()` in `java.text.Format` >> related classes. >> >> The current spec for most of these methods is either "_Overrides >> <method_name>_" or are incomplete/wrong (i.e. see `ChoiceFormat`). >> >> This fix adjusts the spec to provide a consistent definition for the >> overridden methods and specify what is being compared/used to generate a >> hash code value. >> >> For implementations that use at most a few fields, the values are stated, >> otherwise a more general term is used as a substitution (i.e. see >> `DecimalFormat`). > > Justin Lu has updated the pull request incrementally with two additional > commits since the last revision: > > - CSR review: Adjust equals wording, improve correctness of hashCode > definitions > - CSR review: replace implNote with implSpec
src/java.base/share/classes/java/text/CompactNumberFormat.java line 221: > 219: > 220: // Non-transient / non-static fields should be added to hashCode impl > 221: Did you mean `equals()`? `hashCode()` may not have all the non-transient fields. src/java.base/share/classes/java/text/CompactNumberFormat.java line 2384: > 2382: * > 2383: * All fields of this class that are non-transient and non-static > are used > 2384: * to calculate the hash code value. Is this `All` correct? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/15459#discussion_r1317879503 PR Review Comment: https://git.openjdk.org/jdk/pull/15459#discussion_r1317880046