import java.io.Serializable; abstract class Issue4 { public void merge(Descriptor descriptor) { put((Descriptor) descriptor, get(descriptor)); } public abstract void put(Descriptor key, T value); public abstract T get(Descriptor key); } class Descriptor {}