### Question:
StandardDialFrame extends AbstractDialLayer implements DialFrame,
        Cloneable, PublicCloneable, Serializable { @Override public Object clone() throws CloneNotSupportedException { return super.clone(); } StandardDialFrame(); double getRadius(); void setRadius(double radius); Paint getBackgroundPaint(); void setBackgroundPaint(Paint paint); Paint getForegroundPaint(); void setForegroundPaint(Paint paint); Stroke getStroke(); void setStroke(Stroke stroke); @Override Shape getWindow(Rectangle2D frame); @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 { StandardDialFrame f1 = new StandardDialFrame(); StandardDialFrame f2 = (StandardDialFrame) f1.clone(); assertNotSame(f1, f2); assertSame(f1.getClass(), f2.getClass()); assertEquals(f1, f2); MyDialLayerChangeListener l1 = new MyDialLayerChangeListener(); f1.addChangeListener(l1); assertTrue(f1.hasListener(l1)); assertFalse(f2.hasListener(l1)); }