今天就跟大家聊聊有关java泛型中T和?的区别是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
10年积累的网站制作、网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有洛宁免费网站建设让你可以放心的选择与我们合作。
T 代表一种类型。
加在类上:
class SuperClass{}
加在方法上:
publicvoid fromArrayToCollection(T[] a, Collection c){}
(免费学习视频教程分享:java视频教程)
方法上的
class People{ public void show(T a) { } }
T extends T2 指传的参数为T2或者T2的子类型。
?是通配符,泛指所有类型。
一般用于定义一个引用变量,这么做的好处是,如下所示,定义一个sup的引用变量,就可以指向多个对象。
SuperClass> sup = new SuperClass("lisi"); sup = new SuperClass (new People()); sup = new SuperClass (new Animal());
若不用?,用固定的类型的话,则:
SuperClasssup1 = new SuperClass ("lisi"); SuperClass sup2 = new SuperClass ("lisi"); SuperClass sup3 = new SuperClass ("lisi");
这就是?通配符的好处。
看完上述内容,你们对java泛型中T和?的区别是什么有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。