java泛型中T和?的区别是什么-创新互联

今天就跟大家聊聊有关java泛型中T和?的区别是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

创新互联公司专注于大关网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供大关营销型网站建设,大关网站制作、大关网页设计、大关网站官网定制、成都小程序开发服务,打造大关网络公司原创品牌,更为您提供大关网站排名全网营销落地服务。

T 代表一种类型。

加在类上:

class SuperClass{}

加在方法上:

public void 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());

若不用?,用固定的类型的话,则:

SuperClass sup1 = new SuperClass("lisi");
SuperClass sup2 = new SuperClass("lisi");
SuperClass sup3 = new SuperClass("lisi");

这就是?通配符的好处。

看完上述内容,你们对java泛型中T和?的区别是什么有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。


网页题目:java泛型中T和?的区别是什么-创新互联
当前路径:
http://ybzwz.com/article/dchhoj.html