### Question:
PeriodAxis extends ValueAxis implements Cloneable, PublicCloneable, Serializable { @Override public int hashCode() { return super.hashCode(); } PeriodAxis(String label);  PeriodAxis(String label,
                      RegularTimePeriod first, RegularTimePeriod last);  PeriodAxis(String label, RegularTimePeriod first,
            RegularTimePeriod last, TimeZone timeZone, Locale locale); RegularTimePeriod getFirst(); void setFirst(RegularTimePeriod first); RegularTimePeriod getLast(); void setLast(RegularTimePeriod last); TimeZone getTimeZone(); void setTimeZone(TimeZone zone); Locale getLocale(); Class getAutoRangeTimePeriodClass(); void setAutoRangeTimePeriodClass(Class c); Class getMajorTickTimePeriodClass(); void setMajorTickTimePeriodClass(Class c); @Override boolean isMinorTickMarksVisible(); @Override void setMinorTickMarksVisible(boolean visible); Class getMinorTickTimePeriodClass(); void setMinorTickTimePeriodClass(Class c); Stroke getMinorTickMarkStroke(); void setMinorTickMarkStroke(Stroke stroke); Paint getMinorTickMarkPaint(); void setMinorTickMarkPaint(Paint paint); @Override float getMinorTickMarkInsideLength(); @Override void setMinorTickMarkInsideLength(float length); @Override float getMinorTickMarkOutsideLength(); @Override void setMinorTickMarkOutsideLength(float length); PeriodAxisLabelInfo[] getLabelInfo(); void setLabelInfo(PeriodAxisLabelInfo[] info); @Override void setRange(Range range, boolean turnOffAutoRange,
                         boolean notify); @Override void configure(); @Override AxisSpace reserveSpace(Graphics2D g2, Plot plot,
                                  Rectangle2D plotArea, RectangleEdge edge,
                                  AxisSpace space); @Override AxisState draw(Graphics2D g2, double cursor, Rectangle2D plotArea,
            Rectangle2D dataArea, RectangleEdge edge,
            PlotRenderingInfo plotState); @Override List<ValueTick> refreshTicks(Graphics2D g2, AxisState state,
            Rectangle2D dataArea, RectangleEdge edge); @Override double valueToJava2D(double value, Rectangle2D area,
            RectangleEdge edge); @Override double java2DToValue(double java2DValue, Rectangle2D area,
            RectangleEdge edge); @Override boolean equals(Object obj); @Override int hashCode(); @Override Object clone();  }### Answer:
@Test public void testHashCode() { PeriodAxis a1 = new PeriodAxis("Test"); PeriodAxis a2 = new PeriodAxis("Test"); assertEquals(a1, a2); int h1 = a1.hashCode(); int h2 = a2.hashCode(); assertEquals(h1, h2); }