I can do this:
private void doSomething(Class<? extends OtherClass> clazz) {
doSomethingEpicWithClass(clazz);
}
But I can't do this:
private void doSomethingAsWell(Class<? extends OtherClass implements OtherInterface> clazz) {
doSomethingEpicWithClass(clazz);
doSomethingEpicWithInterface(clazz);
}
Makes sense to you? Great. So how would I check if a passed class extends something and implements something? There isn't even an "implement" keyword for this case.