В чем причина, почему Java не позволяет нам делать
private T[] elements = new T[initialCapacity];
Я мог понять, что .NET не позволил нам сделать это, поскольку в .NET у вас есть типы значений, которые во время выполнения могут иметь разные размеры, но в Java все виды T будут ссылками на объекты, таким образом, имея того же размера (поправьте меня, если я ошибаюсь).
Какова причина?