JAVA_ не може да създаде общ масив

Java_ Cant Create Generic Array



Всички граматични правила имат своите намерения, JAVA не може да създава общи масиви и без изключения.

Част от кода може да види причината

import java.util.ArrayList public class demo { public static void main(String[] args){ Object o = new ArrayList[1]//Assuming you can create a generic array like this, because of the polymorphism, the array of subclasses can be instantiated to the parent class, so we can use ArrayList[1] for Object The type of variable o opens up space. o[0] = new ArrayList()// At this point, we use polymorphism to instantiate ArrayList to o. There is obviously an error here. The o type is actually an ArrayList type, but we instantiate it with ArrayList. } }

Първо трябва да знаем, че връзката за наследяване между родови типове и техните първоначални класове няма Ковариация Тоест, връзката за наследяване между оригиналните класове не се предава на генерирания клас. Например, оригиналният клас син е подклас на баща, но няма наследствена връзка между син и баща.