### Question:
StandardDialFrame extends AbstractDialLayer implements DialFrame,
        Cloneable, PublicCloneable, Serializable { @Override public boolean equals(Object obj) { if (obj == this) { return true; } if (!(obj instanceof StandardDialFrame)) { return false; } StandardDialFrame that = (StandardDialFrame) obj; if (!PaintUtilities.equal(this.backgroundPaint, that.backgroundPaint)) { return false; } if (!PaintUtilities.equal(this.foregroundPaint, that.foregroundPaint)) { return false; } if (this.radius != that.radius) { return false; } if (!this.stroke.equals(that.stroke)) { return false; } return super.equals(obj); } 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 testEquals() { StandardDialFrame f1 = new StandardDialFrame(); StandardDialFrame f2 = new StandardDialFrame(); assertEquals(f1, f2); f1.setRadius(0.2); assertFalse(f1.equals(f2)); f2.setRadius(0.2); assertEquals(f1, f2); f1.setBackgroundPaint(new GradientPaint(1.0f, 2.0f, Color.WHITE, 3.0f, 4.0f, Color.yellow)); assertFalse(f1.equals(f2)); f2.setBackgroundPaint(new GradientPaint(1.0f, 2.0f, Color.WHITE, 3.0f, 4.0f, Color.yellow)); assertEquals(f1, f2); f1.setForegroundPaint(new GradientPaint(1.0f, 2.0f, Color.BLUE, 3.0f, 4.0f, Color.green)); assertFalse(f1.equals(f2)); f2.setForegroundPaint(new GradientPaint(1.0f, 2.0f, Color.BLUE, 3.0f, 4.0f, Color.green)); assertEquals(f1, f2); f1.setStroke(new BasicStroke(2.4f)); assertFalse(f1.equals(f2)); f2.setStroke(new BasicStroke(2.4f)); assertEquals(f1, f2); f1.setVisible(false); assertFalse(f1.equals(f2)); f2.setVisible(false); assertEquals(f1, f2); }