### Question:
Prototype implements Cloneable { @Override protected abstract Prototype clone() throws CloneNotSupportedException;    }### Answer:
@Test public void testPrototype() throws Exception { assertEquals(this.prototype.toString(), this.expectedString); final Object clone = this.prototype.clone(); assertNotNull(clone); assertSame(clone.getClass(), this.prototype.getClass()); assertNotSame(this.prototype, clone); }