Здесь есть абстрактный класс BaseA.

//class definition
public abstract class BaseA {
    void doSomething();
}

И есть два клиента, использующие класс BaseA следующим образом.

//the client A 
class clientA {
    void clientA(BaseA obj){
        obj.doSomething();
    }
    ...

//the client B  
class clientB<T extends BaseA> {
    void methodB(T obj){
        obj.doSomething();

    }
    ...

Вопрос в том, есть ли разница между этими двумя? Какой из них лучше и почему? Пожалуйста, порекомендуйте. * Вопрос не ограничивается производительностью.

2
ando 21 Дек 2019 в 03:12