Arraylist类到底和泛型有什么关系
1个回答
展开全部
类,对象,方法均可以有一个代表类型的形参,可以用T,E,V等表示。形参顾名思义只是一个形式,一个泛型,没有具体的实际类型参数。 所以这些用T,E,V等参数模糊代表类型的类,对象,方法。我们就叫做泛型。等到我们传入具体的实际类型参数(及实参)给这些类,对象方法时。它们就有了指定的类型。(注意我们平常见到的一些package中的类,它们都不是泛型,因为类,对象,方法都有具体的类型)。
举个例子:下面的ArrayList类就是一个泛型,进去它的实现方法中,我们可以看到 public class ArrayList extends AbstractListimplements List, RandomAccess, Cloneable, java.io.Serializable{private static final long serialVersionUID = 8683452581122892189L; private transient Object[] elementDat................}E代表形参,表示arraylist是一个泛型。我们不传入具体的实参时,则可以存储任何类型的内容到arraylist中eg:ArrayList List = new ArrayList(); (但注意,这样会导致读取内容时抛出异常)。所以我们在使用arraylist时,一般给它指定具体的实际类型eg:ArrayList list = new ArrayList()
举个例子:下面的ArrayList类就是一个泛型,进去它的实现方法中,我们可以看到 public class ArrayList extends AbstractListimplements List, RandomAccess, Cloneable, java.io.Serializable{private static final long serialVersionUID = 8683452581122892189L; private transient Object[] elementDat................}E代表形参,表示arraylist是一个泛型。我们不传入具体的实参时,则可以存储任何类型的内容到arraylist中eg:ArrayList List = new ArrayList(); (但注意,这样会导致读取内容时抛出异常)。所以我们在使用arraylist时,一般给它指定具体的实际类型eg:ArrayList list = new ArrayList()
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询