首先新建一个C#控制台项目,命名为fanXingClassAndMethod。
一:泛型类的语法格式
1.新建一个名为Person的类,修改为泛型类,我在注释里写的很多,直接看代码吧:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace fanXingClassAndMethod
{
//
//T代表一个不确定的类型
//这个类中有几个类型不确定,就在<>内写几个“类型占位符”,即可写成Person<T,K>,Person<T,K,L>等。
class Person
{
public string name;
public int age;
public T info;
public void Show()
{
Console.WriteLine(string.Format("{0}---{1}---{2}",name,age,info));
}
}
}
2,在Program的类中实例化一个Person,并且调用它的Show:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace fanXingClassAndMethod
{
class Program
{
static void Main(string[] args)
{
Person
p1.name = “武大人”;
p1.age = 18;
p1.info = “郑州大学”;
p1.Show();
Console.ReadKey();
}
}
}
3,运行项目:
[
二:泛型方法的语法格式
在定义方法的时候,方法名的后面使用
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace fanXingClassAndMethod
{
class Person
{
public string name;
public int age;
public T info;
public void Show()
{
Console.WriteLine(string.Format("{0}---{1}---{2}",name,age,info));
}
//已经定义了T这个类型
public T Attempt()
{
return info;
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace fanXingClassAndMethod
{
class Program
{
static void Main(string[] args)
{
Person
p1.name = “武大人”;
p1.age = 18;
p1.info = “郑州大学”;
p1.Show();
Console.WriteLine(p1.Attempt());
Console.ReadKey();
}
}
}
结果如下:[{ }
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace fanXingClassAndMethod
{
class Program
{
static void Main(string[] args)
{
Person
p1.name = “武大人”;
p1.age = 18;
p1.info = “郑州大学”;
p1.Show();
//Console.WriteLine(p1.Attempt());
Console.WriteLine(Attempt<string>("我爱郑大"));
Console.ReadKey();
}
public static K Attempt<K>(K text)
{
return text;
}
}
}
结果如下:[