黑马程序员技术交流社区
标题:
求解:泛型的问题
[打印本页]
作者:
pphdsny3
时间:
2012-9-4 11:03
标题:
求解:泛型的问题
111.jpg
(12.38 KB, 下载次数: 35)
下载附件
2012-9-4 11:01 上传
为啥加了具体的泛型就报错?
222.jpg
(11.04 KB, 下载次数: 32)
下载附件
2012-9-4 11:01 上传
加个问号就没问题呢?
求解答!!!
作者:
武庆东
时间:
2012-9-4 11:26
?是占位符,代表任意类型!
Class<Person> clazz=(Person)Class.forName("XXXXXX");你之前好像没有加强制类型转换符号!?
作者:
李志群
时间:
2012-9-4 11:31
楼主你的程序 我估计是 泛型限定这方面出了错误哦。。。
泛型的限定:
明确具体类型代表一个类型,明确?代表所有类型,
能不能对操作的类型限制在一个范围之内呢?
比如:定义一个功能,只操作person类或者person子类型。这时可以用? 继承 E接收e类型或者E的子类型。
存储时候就用这种方式。这就是上限。
下限的表示形式: ? super E;接受E类型或者E的父类型。
什么时候使用上限呢? 一般情况下,只要是往容器中添加元素时,使用上限 ? extends E
什么时候使用下限呢?一般情况下,只要是从容器中取出元素时,使用下限 ? super E
作者:
王陶成
时间:
2012-9-4 12:37
Class.forName(String className) API 说返回的是 具有指定名的类的 Class 对象
你的第一个代码 用泛型指定 Person类型,它返回的不是Person类型,要强转
第二个代码的 ? ,可以接受任何类型,所以不报错
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2