ValueImpl implements Value<V> { @Override public Value<V> setValue(V value) { this.value = value; return this; } ValueImpl(V val); @Override Value<V> setValue(V value); @Override V getValue(); @Override abstract ValueImpl<V> copy(); @Override int hashCode(); @Override boolean equals(Object obj);  }
@Test void setValue() { final String value = "V"; instance().setValue(value); assertEquals(value, instance().getValue()); }