Rectangle3 implements Cloneable, Savable, Externalizable, ReadOnlyRectangle3, Poolable { @Override public Rectangle3 clone() { return new Rectangle3(this); } Rectangle3();  Rectangle3(final ReadOnlyRectangle3 source);  Rectangle3(final ReadOnlyVector3 a, final ReadOnlyVector3 b, final ReadOnlyVector3 c); Rectangle3 set(final ReadOnlyRectangle3 source); @Override ReadOnlyVector3 getA(); void setA(final ReadOnlyVector3 a); @Override ReadOnlyVector3 getB(); void setB(final ReadOnlyVector3 b); @Override ReadOnlyVector3 getC(); void setC(final ReadOnlyVector3 c); @Override Vector3 random(Vector3 result); @Override String toString(); @Override int hashCode(); @Override boolean equals(final Object o); @Override Rectangle3 clone(); @Override void write(final OutputCapsule capsule); @Override void read(final InputCapsule capsule); @Override Class<? extends Rectangle3> getClassTag(); @Override void readExternal(final ObjectInput in); @Override void writeExternal(final ObjectOutput out); final static Rectangle3 fetchTempInstance(); final static void releaseTempInstance(final Rectangle3 rectangle);  }
@Test public void testClone() { final Rectangle3 rect1 = new Rectangle3(); final Rectangle3 rect2 = rect1.clone(); assertEquals(rect1, rect2); assertNotSame(rect1, rect2); }