Я получаю ошибку общего массива, но не думаю, что пытаюсь создать экземпляр универсального массива. Массив имеет тип Double, что означает, что он не должен быть универсальным, не так ли?
public class PolynomialSet extends Set<Polynomial<Double>>{
public PolynomialSet(int size){
elements = new Polynomial<Double>[size];
}
public class Polynomial <Domain> {}
public class Set<Type> {
protected Type[] elements;
protected int cardinality;
public int size(){
return elements.length;
}
public Type get(int k){
return elements[k];
}
public void set(int k, Type in){
elements[k]=in;
}
}
@AndyTurner Я пытаюсь создать экземпляр «элементов» в виде массива «Polynomial <Double>» длины «size».
@ user2303321 массив с типом элемента Polynomial<Double> будет общим массивом.
@AndyTurner Делает ли шаблон <Double> универсальным? Могу ли я сделать его не общим, но при этом разрешить Polynomial <Domain> иметь свой шаблон?
@AndyTurner Разве это не общий случай, если память не выделяется при компиляции? Я думал, что наличие Polynomial <Double> выделит память двойника.




new Polynomial<Double>[size]будет универсальным массивом. Вы пытаетесь создать экземпляр универсального массива. Что вы на самом деле пытаетесь здесь сделать? Вы пытаетесь указать длинуelements?