java - 我可以在java中的变量上应用泛型吗?
问题描述
在java中,我们可以在类和方法上应用泛型,如下所示
class Sample<T>{}
public <T,E> void test(T x, E y){}
这有助于我们编写泛型算法,帮助我们为多个输入重用相同的代码,同样我们可以将泛型应用于原始变量吗?如果有可能我们可以一次又一次地为不同的输入重复使用相同的变量,我知道
class Sample<T>{public T temp;}
是可能的。
但问题是
class Sample{public <T> T temp;}
这可能吗
解决方案
不,不是,它不可能告诉 temp 是什么类型,所以它不会帮助编译器限制任何东西(这就是泛型的意义),或者工具来提出任何建议。
在这种情况下,您无法比将 temp 设为 Object 更好。(或使用你的第二个例子)
推荐阅读
- javascript - 无效的主机头 Heroku node.js react app
- wordpress - ACF 在 WP_Query 中发布选定的标签列表
- node.js - 我不能“npm run release”,显示错误 1
- python - Python3.6.5 无法导入 Pandas
- javascript - Schema 必须包含唯一的命名类型,但包含多个名为“Page”的类型
- android - 如何使用 Retrofit 从 api 响应中获取图像?
- android - RxJava zip 结合 api 调用
- cassandra - cassandra中的分区计数
- javascript - JavaScript 查找对象属性
- c# - 如何在不丢失格式的情况下将 TextRange 附加到流文档