The Interface: -------------- public interface ConfigChangedListener { /** * A configuration entry has been modified. */ public void configValueChanged(BaseConfig configEntry, T oldValue, T newValue); } The code where I am trying to instanciate it: --------------------------------------------- ConfigChangedListener myListener = new ConfigChangedListener() { public void configValueChanged(BaseConfig configEntry, T oldValue, T newValue) { } }; The following DOES work, however: --------------------------------- public class Foo implements ConfigChangedListener { public void configValueChanged(BaseConfig configEntry, T oldValue, T newValue) {