В чем разница с объявлением метода следующим образом:
public <T extends SomeClass> void doSomething(T obj)
{
// Do something.
}
И это:
public void doSomething(SomeClass obj)
{
// Do Something.
}
Как я вижу это, оба из них указывают, что переданный объект должен быть подклассом типа SomeClass
, так зачем вообще разбираться с дженериками в этом случае?