是否可以将对象实例类型作为泛型的类型参数传递?类似以下内容:对象的Java Pass实例类型到泛型类型参数
2
A
回答
5
编号时应该知道泛型类型。
泛型是在编译时本身捕捉可能的运行时异常。
List<Integer> list = new ArrayList<Integer>();
//..some code
String s = list.get(0); // this generates compilation error
因为编译器知道list
意味着仅存储Integer
对象和分配值从列表中String
得到绝对是一个错误。如果通用类型在运行时确定,这将是困难的。
0
泛型在编译时被解析,所以不起作用(编译器需要执行该代码来知道结果,而这显然是不可能的,因为它仍在编译:P)。
1
Java中存在泛型的原因是,在编译时可以捕捉到更多的错误。正因为如此,编译时需要强烈定义类型,否则它们是无用的。
下面是对泛型一个很好的学习经验:http://docs.oracle.com/javase/tutorial/java/generics/
0
什么是你在做什么呢?你想达到什么目的?为什么不只是这样做:
Item<Object> item = new Item<Object>(obj);
相关问题
- 1. 泛型类型参数不相同的类型参数实例
- 2. 铸造Java对象泛型类型与已知类型参数
- 3. Java的泛型类实例化没有类型参数
- 4. Java泛型类型参数
- 5. C#泛型类型的泛型对象实例化
- 6. Get类型对象的泛型类型(没有对象的实例存在)
- 7. 泛型类型参数和类型
- 8. 如何获取泛型参数类型的类实例
- 9. Java参数化泛型类型列表创建不同类型的对象
- 10. 如何实例泛型参数化类
- 11. Java的泛型参数化类型
- 12. Java的泛型施放参数类型
- 13. Java的泛型获得类型参数
- 14. 带泛型类型参数的网络泛型类型
- 15. 使用泛型类型实例化DynamoDBQueryExpression
- 16. 泛型类型参数不是类型?
- 17. Java使用泛型或类类型创建对象的新实例
- 18. Java泛型:无界通配符不与对象类型参数
- 19. 如何检查是否泛型类型实例从另一个“继承”,既泛型类型和参数类型
- 20. 与Java泛型类型参数
- 21. java泛型类型参数接口
- 22. Java泛型类型参数隐藏
- 23. Java:给出类对象的泛型类
- 24. 泛型类型的返回实例
- 25. 创建泛型类型的实例时不能提供参数
- 26. Java泛型:获得类的类与泛型参数
- 27. 如何返回泛型类中的对象的泛型类型?
- 28. 从泛型类型的Swift实例化
- 29. 基于泛型参数的java泛型类型推断
- 30. 泛型类没有泛型函数中的类型参数
+1 - 唯一正确的答案。 (是的,类型信息被擦除了,所以你通常不能找出'T'绑定的类型,但即使不是这种情况,你仍然不能用一个参数类“实例化”泛型类型是一个运行时的值,这将使泛型的静态类型变得不可能。) –