public <T> void show(T t),void前面的泛型T是什么作用
public <T>这个T是个修饰符的功能,表示是个泛型方法,就像有static修饰的方法是个静态方法一样。
<T> 不是返回值,表示传入参数有泛型
public static <T>list<T> aslist(T...a)
第一个表示是泛型方法,第二个表示返回值是list类型,而这个list有泛型,只能存t类型的数据
泛型方法的使用示例:
public <T> void fromArrayToCollection(T[] a, Collection<T> c){
for(T t : a){
c.add(t);
}
}
public void fromArrayToCollection(T[] a, Collection<T> c){
for(T t : a){
c.add(t);
}
}
第一个方法相当于为该方法声明了一个类型为T的类,这个方法放到任意一个类中都不会报错的。
第二个方法相当于没有声明类型为T的类,这时必须在类上面加上泛型T,不然这个方法会报错的。
package generic; /**
* 泛型方法测试
*
* @author caiyu
*
*/
public class GenMethod { public static <T> void display(T t) {
System.out.println(t.getClass());
}
}
首先,泛型的声明,必须在方法的修饰符(public,static,final,abstract等)之后,返回值声明之前。
然后,和泛型类一样,可以声明多个泛型,用逗号隔开。
http://www.cnblogs.com/anrainie/archive/2012/03/09/2387272.html
public <T> void show(T t),void前面的泛型T是什么作用的更多相关文章
- c++模板使用出错情况error LNK2019: unresolved external symbol "public: float __thiscall Compare<float>::min(void)" (?min@?$Compare@M@@QAEMXZ) referenced in function _main
将类模板在头文件中定义,类的成员函数在头文件中声明,头文件中只留下接口,函数的实现在另一个.cpp文件中,这样编译出来错误error LNK2019: unresolved external symb ...
- void fun() const{}; const void fun(){}; 和void const fun(){}; 的区别?
void fun() const{}; const void fun(){}; 和void const fun(){}; 的区别? const void fun(){};和void const fun ...
- C语言复杂声明-void (*signal(int sig, void (*handler)(int)))(int);
问题提出 请分析此声明:void (*signal(int sig, void (*handler)(int)))(int); 求解过程 在对上面的例子作分析之前,我们需要了解C语言的声明优先级,&l ...
- 如何理解这段代码:void (*signal (int sinno,void(*func)(int)))(int)
void (*signal (int sinno,void(*func)(int)))(int) 先来看void(*func)(int) 这里的意思是声明一个函数指针func,它的参数类型为int ...
- signal函数的原型声明void (*signal(int signo, void (*fun(int))))(int)分析
转:http://blog.sina.com.cn/s/blog_4850a7880100hnam.html void (*signal(int signo, void (*fun(int))))(i ...
- void (*signal(int sig, void (*func) (int))) (int)理解
http://blog.csdn.net/sever2012/article/details/8281271 1.signal( int sig, void (*func)(int))signal是一 ...
- signal函数理解或者void (*signal(int signum,void(*handler)(int)))(int)理解
把void (*signal(int signum,void(*handler)(int)))(int)分成两部分: typedef void (*sighandler_t)(int); sighan ...
- 浅谈main(),int main(),void main(),int main(void)四者之间的区别
1,main():相当于 int main() 2,int main():int 是main() 函数的返回类型.这表明main()函数返回的值是整数且授受任何数量的参数. 3,void main() ...
- public void method(),void前面的泛型T是什么
public <T>这个T是个修饰符的功能,表示是个泛型方法,就像有static修饰的方法是个静态方法一样. 注意<T> 不是返回值,此处的返回值是void ,此处的<T ...
随机推荐
- PHP文件读写操作之文件写入代码
在PHP网站开发中,存储数据通常有两种方式,一种以文本文件方式存储,比如txt文件,一种是以数据库方式存储,比如Mysql,相对于数据库存储,文件存储并没有什么优势,但是文件读写操作在基本的PHP开发 ...
- mac配置nginx
基本的安装其实网上一大半教程: 安装:brew install nginx 配置注意要点: 1.主要配置监听的端口和php-fpm监听的端口相同可以配置成默认的:(127.0.0 ...
- 如何将arcgis的mxd文档存储为相对路径
在默认情况下,ArcGIS 10中地图文件mxd中添加的图层所引用的文件路径均为绝对路径.这就意味着,如果你在地图中引用了“D:\data\DEM.shp”文件,那map.mxd文件中保存的该层文件路 ...
- iOS 关于僵尸对象和僵尸指针的那些事儿
引言 提到僵尸就感到一种恐怖,大家都知道“僵尸”是没有生命的,但是它确实是一种存在的类似生命体的一种生物.哈哈,当然本文的重点不是讨论“僵尸”,而是有关于ios当中经常遇到的僵尸指针(Zombie P ...
- 关于网站高性能中磁盘cpu以及内存对网站性能的影响
之前和同事聊天的时候,提到了这个硬件方面(包括内存,cpu,以及硬盘的存储选择),个人认为可以从这几个方面来提高底层硬件的性能,从而提高网站的整体吞吐量和速度. 一.主机: (1).CPU:决定处理的 ...
- {Reship}{ListView}C# ListView用法详解
======================================================================== This aritcle came from http ...
- UBUNTU9.10下安装TFTP学习笔记一(arm学习SEED-138板子)
擦,刚刚写的没保存都丢了,郁闷中~~~~ 简单重写 1什么是TFTP .安装TFTP(TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的 ...
- C++中四种转换类型的区别
一.四种转换类型比较: 类型转换有c风格的,当然还有c++风格的.c风格的转换的格式很简单(TYPE)EXPRESSION,但是c风格的类型转换有不少的缺点,有的时候用c风格的转换是不合适的,因为它可 ...
- Notepad++ HTML格式化
[Notepad++ HTML格式化] Tidy2.
- Bridge(桥接)-对象结构型模式
1.意图 将抽象部分与它的实现部分分离,使它们都可以独立地变化. 2.动机 在抽象类与它的实现之间起到桥梁作用,使它们可以独立地变化. 3.适用性 不希望在抽象和它的实现部分之间有一个固定的绑定关系. ...