为什么泛型类的构造方法使用时要额外加<泛型>

为什么泛型类的构造方法使用时要额外加<泛型>

例如:ArrayList的构造函数
public ArrayList() {
this.elementData = DEFAULTCAPACITY_EMPTY_ELEMENTDATA;
}

但是使用时:
ArrayList arrayList = new ArrayList();
右边多了一个
为啥?

这个类的源码class类名后面有定义泛型的,泛型可以告诉编译器这个类编译时所容纳的类。

增加泛型,才能告知编译器这是一个泛型类,不能实例化