泛型能够与类、接口、委托、方法组合,能够防止类膨胀和属性膨胀,简化程序的目的。
类型参数:T+参数
使用T作为类型参数的前缀。
泛型类:
class Book
{
public string Name{get;set;}
}
class Cloth
{
public string Brand {get;set;}
}
class Box<Tgood>
{
public Tgood good{get;set;}
//<>中的TSex表示能被取代的T型参数
}
Book book=new Book(){Name="新华字典"};
//实例化woman对象
Cloth cloth=new Cloth(){Brand="HM"};
//实例化man对象
Box<Book> box1 = new Box<Book>() { good = book };
Box<Cloth> box2 = new Box<Cloth>() { good = cloth };
//
/*泛型类能够将<>中的Book传递到T型参数中,good=book特化,相当于
class Box
{
public Book book{get;set;}
}*/
Console.WriteLine(box1.good.Name);
Console.WriteLine(box2.good.Brand);