### Question:
StandardDialRange extends AbstractDialLayer implements DialLayer,
        Cloneable, PublicCloneable, Serializable { @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } StandardDialRange();  StandardDialRange(double lower, double upper, Paint paint); int getScaleIndex(); void setScaleIndex(int index); double getLowerBound(); void setLowerBound(double bound); double getUpperBound(); void setUpperBound(double bound); void setBounds(double lower, double upper); Paint getPaint(); void setPaint(Paint paint); double getInnerRadius(); void setInnerRadius(double radius); double getOuterRadius(); void setOuterRadius(double radius); @Override boolean isClippedToWindow(); @Override void draw(Graphics2D g2, DialPlot plot, Rectangle2D frame,
            Rectangle2D view); @Override boolean equals(Object obj); @Override int hashCode(); @Override Object clone();  }### Answer:
@Test public void testCloning() throws CloneNotSupportedException { StandardDialRange r1 = new StandardDialRange(); StandardDialRange r2 = (StandardDialRange) r1.clone(); assertNotSame(r1, r2); assertSame(r1.getClass(), r2.getClass()); assertEquals(r1, r2); MyDialLayerChangeListener l1 = new MyDialLayerChangeListener(); r1.addChangeListener(l1); assertTrue(r1.hasListener(l1)); assertFalse(r2.hasListener(l1)); }