### Question:
HighLowItemLabelGenerator implements XYItemLabelGenerator,
        XYToolTipGenerator, Cloneable, PublicCloneable, Serializable { @Override public boolean equals(Object obj) { if (obj == this) { return true; } if (!(obj instanceof HighLowItemLabelGenerator)) { return false; } HighLowItemLabelGenerator generator = (HighLowItemLabelGenerator) obj; if (!this.dateFormatter.equals(generator.dateFormatter)) { return false; } if (!this.numberFormatter.equals(generator.numberFormatter)) { return false; } return true; } HighLowItemLabelGenerator();  HighLowItemLabelGenerator(DateFormat dateFormatter,
                                     NumberFormat numberFormatter); @Override String generateToolTip(XYDataset dataset, int series, int item); @Override String generateLabel(XYDataset dataset, int series, int category); @Override Object clone(); @Override boolean equals(Object obj); @Override int hashCode();  }### Answer:
@Test public void testEquals() { HighLowItemLabelGenerator g1 = new HighLowItemLabelGenerator(); HighLowItemLabelGenerator g2 = new HighLowItemLabelGenerator(); assertEquals(g1, g2); assertEquals(g2, g1); g1 = new HighLowItemLabelGenerator(new SimpleDateFormat("d-MMM-yyyy"), NumberFormat.getInstance()); assertFalse(g1.equals(g2)); g2 = new HighLowItemLabelGenerator(new SimpleDateFormat("d-MMM-yyyy"), NumberFormat.getInstance()); assertEquals(g1, g2); g1 = new HighLowItemLabelGenerator(new SimpleDateFormat("d-MMM-yyyy"), new DecimalFormat("0.000")); assertFalse(g1.equals(g2)); g2 = new HighLowItemLabelGenerator(new SimpleDateFormat("d-MMM-yyyy"), new DecimalFormat("0.000")); assertEquals(g1, g2); }