Arrays.asList () Confuso código fonte

De acordo comeste código fonte para oArrays classe, o métodoasList passa uma matriz para o construtor de novoArrayList. Mas não existe tal construtor. Não varargs gera uma matriz, então como isso é possível?

Aqui está oasList fonte:

public static <T> List<T> asList(T... a) {
    return new ArrayList<T>(a);
}

questionAnswers(1)

yourAnswerToTheQuestion