1 2 3 4 5 6 7 8 9
class AbstractSuperClass<A,B> {} interface InterfaceOne {} interface InterfaceTwo<A> {} class ID {} abstract class AbstractTestClass<T> extends AbstractSuperClass<T,ID> implements InterfaceOne, InterfaceTwo<T> { } class TestType {} class ConcreteClass extends AbstractTestClass<TestType> { }