Например, я создаю класс-родитель, от которого будет все наследоваться:
public class Parent <T extends Parent>{
private T element;
public Parent <T> set (T element){
this.element = element;
return this; // Возращаем копию класса.
}
public T get (){
return element;
}
}
После чего создаю несколько наследников.
public class Child extends Parent <Child>{}
public class Child2 extends Parent <Child>{}
Так вот, в чем отличие между таким же кодом, только без расширение параметров
public class Parent <T> { // Без extends Parent
private T element;
public Parent <T> set (T element){
this.element = element;
return this; // Возращаем копию класса.
}
public T get (){
return element;
}
}
Если все работает идентично?