java 泛型 class<T> 创建方法

来源:互联网 发布:税收数据 编辑:程序博客网 时间:2024/05/16 17:29
public class Assemble<T> where T:new(){public string SayHello<T> (T object){T ass=new T();return ass.ToString();}}public class legal{ public legal(){}}public class notlegal{public notlegal(string someting){}}
这句话的意思是声明了一个叫做Assemble<T>的泛型类,然后T的限制为必须要有一个无参构造器。
注:where T:class是对T的约束,表示T必须是class类型或它的派生类。
当声明Assemble<legal> ass=new Assemble<legal>();时相当于声明了一个Assemble<T>,其中第一个代码端中的T全部替换为legal。当声明Assemble<notlegal> ass=new Assemble<notlegal>();时,由于Assemble<T>中T要求必须具有无参构造器,所以,这句话会报错。
0 0