### Question:
StackedBarRenderer3D extends BarRenderer3D implements Cloneable, PublicCloneable, Serializable { @Override public boolean equals(Object obj) { if (obj == this) { return true; } if (!(obj instanceof StackedBarRenderer3D)) { return false; } StackedBarRenderer3D that = (StackedBarRenderer3D) obj; if (this.renderAsPercentages != that.getRenderAsPercentages()) { return false; } if (this.ignoreZeroValues != that.ignoreZeroValues) { return false; } return super.equals(obj); } StackedBarRenderer3D();  StackedBarRenderer3D(double xOffset, double yOffset);  StackedBarRenderer3D(boolean renderAsPercentages);  StackedBarRenderer3D(double xOffset, double yOffset,
            boolean renderAsPercentages); boolean getRenderAsPercentages(); void setRenderAsPercentages(boolean asPercentages); boolean getIgnoreZeroValues(); void setIgnoreZeroValues(boolean ignore); @Override Range findRangeBounds(CategoryDataset dataset); @Override void drawItem(Graphics2D g2, CategoryItemRendererState state,
            Rectangle2D dataArea, CategoryPlot plot, CategoryAxis domainAxis,
            ValueAxis rangeAxis, CategoryDataset dataset, int row, int column,
            int pass); @Override boolean equals(Object obj); @Override int hashCode();  }### Answer:
@Test public void testEquals() { StackedBarRenderer3D r1 = new StackedBarRenderer3D(); StackedBarRenderer3D r2 = new StackedBarRenderer3D(); assertEquals(r1, r2); }