abstract interface IClazz{ int doSmth(String s); } abstract class X implements IClazz{ } private abstract class Y implements IClazz{ } class Z implements IClazz{ int doSmth(String s){ return 0; } }