登录
首页 » C#源码 » C# 创建一个泛型接口

C# 创建一个泛型接口

于 2022-03-11 发布 文件大小:20.08 kB
0 173
下载积分: 2 下载次数: 1

代码说明:

C# 创建一个泛型接口的例子,创建一个泛型接口的代码和方法如下:   public interface IGenericInterface   {    T CreateInstance(); //接口中调用CreateInstance方法   }   //实现上面泛型接口的泛型类   //派生约束where T : TI(T要继承自TI)   //构造函数约束where T : new()(T可以实例化)   public class Factory : IGenericInterface where T : TI, new()   {    public TI CreateInstance()//创建一个公共方法CreateInstance    {    return new T();    }   }   class Program   {    static void Main(string[] args)    {    //实例化接口    IGenericInterface factory =   Factory();    //输出指定泛型的类型    Console.WriteLine(factory.CreateInstance().GetType().ToString());    Console.ReadLine();    }   }

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • C# 通过存储过程实现员工ID自动编号
    C# 实现自动ID,通过存储过程实现员工自动编号,这个在平时的编程中很实用,自动编号使用存储过程来实现,比较高级一些,且数据库需要支持存储过程。   con.Open();   SqlCommand cmd = new SqlCommand();   string strSql = "insert into 员工个人信息 values ( + label6.Text + , + this.textBox2.Text + , + this.textBox3.Text + , + this.textBox5.Text + , + this.textBox4.Text + )";   cmd.CommandText = strSql;   cmd.Connection = con;   cmd.ExecuteNonQuery();   con.Close();   MessageBox.Show("成功添加信息");   this.groupBox1.Enabled = false;
    2022-05-31 12:11:24下载
    积分:1
  • C# 在分组查询中使用ROLLUP
    C# 在分组查询中使用ROLLUP,///   /// 查询数据库信息   ///   /// 方法返回DataTable对象   private DataTable GetEmployee()   {    string P_Str_ConnectionStr = string.Format(//创建数据库连接字符串    @"server=LVSHUANGSHJ;database=db_TomeTwo;uid=sa;pwd=");    string P_Str_SqlStr = string.Format(//创建SQL查询字符串    @"SELECT 所属部门,性别, AVG(工资) AS 平均工资 FROM tb_Employee GROUP BY 所属部门,性别 WITH ROLLUP");    SqlDataAdapter P_SqlDataAdapter = new SqlDataAdapter(//创建数据适配器    P_Str_SqlStr, P_Str_ConnectionStr);    DataTable P_dt = new DataTable();//创建数据表    P_SqlDataAdapter.Fill(P_dt);//填充数据表    return P_dt;//返回数据表   }
    2022-01-25 22:57:00下载
    积分:1
  • C# 创建反射(控制台程序)
    C# 创建反射的一个例子,是一个控制台程序,运行时,请先运行cmd命令,打开命令提示符控制台,然后此Debug中的exe文件拖放至cmd窗口中,按下回画键,即可看到创建反射的过程,基于以下代码来实现:   Console.WriteLine (" Reflection.MemberInfo");   // 取得 Type 和 MemberInfo.   Type MyType =Type.GetType("System.IO.File");   MemberInfo[] Mymemberinfoarray = MyType.GetMembers();   // 取得并显示 DeclaringType 方法   Console.WriteLine(" 有 {0} 个成员在 {1} 中.",    Mymemberinfoarray.Length, MyType.FullName);   Console.WriteLine("{0}.", MyType.FullName);   if (MyType.IsPublic)   {    Console.WriteLine("{0} 是共有的(public).", MyType.FullName);   }
    2022-05-22 18:36:15下载
    积分:1
  • 录音程序
    自己做的小程序,在VC++6.0下编译通过
    2022-02-28 14:04:03下载
    积分:1
  • C# 在程序中使用指针、十字光标、浮动窗口等不安全代
    C# 在程序中使用指针、十字光标、浮动窗口等不安全代码的实例,单击以下按钮会演示出对应功能:   在程序中显示一个浮动帮助窗口   显示等待光标   显示十字光标   对于功能实现,逐一分享源代码如下:在程序中使用指针等不安全代码:   var MyFileName = "C:atlog.txt";   var MyReader = new MyReaderClass(MyFileName);   const int MyBuffSize = 128;   byte[] MyBuffer = new byte[MyBuffSize];   ASCIIEncoding MyEncoder = new ASCIIEncoding();   var MyInfo = MyFileName + "的内容如下:";   while (MyReader.Read(MyBuffer, 0, MyBuffSize) != 0)    MyInfo += " " + MyEncoder.GetString(MyBuffer);   MessageBox.Show(MyInfo, "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);   private void button2_Click(object sender, EventArgs e)   {//在程序中显示一个浮动帮助窗口    Help.ShowPopup(this, "提高程序开发效率、拓展软件应用领域", new Point(300, 350));   }   private void button3_Click(object sender, EventArgs e)   {//显示等待光标    this.Cursor = Cursors.WaitCursor;   }   private void button4_Click(object sender, EventArgs e)   {//显示十字光标    this.Cursor = Cursors.Cross;   }
    2023-05-20 08:40:02下载
    积分:1
  • C# UseHaving 在HAVING子句中使用子查询过滤平均值数据
    C# UseHaving 在HAVING子句中使用子查询过滤数据,查询学生表中学生年龄大于平均学生年龄的学生信息,查询代码的编写如下:string P_Str_ConnectionStr = string.Format(//创建数据库连接字符串    @"server=WIN-GI7E47AND9RLS;database=db_TomeTwo;uid=sa;pwd=");   string P_Str_SqlStr = string.Format(//创建SQL查询字符串    @"SELECT 所在学院,学生姓名,年龄,(SELECT AVG(年龄) FROM tb_Student) AS 平均年龄 FROM tb_Student GROUP BY 所在学院,学生姓名,年龄 HAVING 年龄>(SELECT AVG(年龄) FROM tb_Student)");   SqlDataAdapter P_SqlDataAdapter = new SqlDataAdapter(//创建数据适配器    P_Str_SqlStr, P_Str_ConnectionStr);   DataTable P_dt = new DataTable();//创建数据表   P_SqlDataAdapter.Fill(P_dt);//填充数据表   return P_dt;//返回数据表   请在测试前,连接好数据库,本例只是分享代码,并没有找到数据库文件。
    2022-03-02 18:15:07下载
    积分:1
  • C#打造自己的智能屏幕取色工具
    C#打造自己的智能屏幕取色工具,自动鼠标坐标点的颜色值,取色窗口会自动躲闪鼠标的位置,取色模块从一个继承自Image类的对象中创建Graphics对象,颜色值可以转换为十进制和十六进制,部分初始化源码如下:   [DllImport("gdi32")]   private static extern IntPtr CreateDC(   string lpszDriver, // 驱动名称   string lpszDevice, // 设备名称   string lpszOutput, // 无用,可以设定位"NULL"   IntPtr lpInitData // 任意的打印机数据   );   [DllImport("gdi32.dll")]   private static extern bool BitBlt(   IntPtr hdcDest, // 目标设备的句柄   int nXDest, // 目标对象的左上角的X坐标   int nYDest, // 目标对象的左上角的X坐标   int nWidth, // 目标对象的矩形的宽度   int nHeight, // 目标对象的矩形的长度   IntPtr hdcSrc, // 源设备的句柄   int nXSrc, // 源对象的左上角的X坐标   int nYSrc, // 源对象的左上角的X坐标   int dwRop // 光栅的操作值
    2022-02-26 10:33:42下载
    积分:1
  • C# WPF 控制按钮上的文字自动换行
    C# WPF 控制按钮上的文字自动换行显示,如图所示的效果,下边的按钮中的标题文字可以自动根据窗口的大小,自动换行显示文字,而上边按钮的文字,则只能在一行中显示,有可能文字会被隐藏掉,这种显示功能的实现方法请下载源码参见Window1.xaml文件。
    2022-03-18 14:16:10下载
    积分:1
  • C# 修改注册表键值禁止修改IE浏览器主页
    C# 通过修改注册表键值的方法实现禁止/允许修改IE浏览器主页,这个方法是通过注册表来修改,通过改变注册表相关键值来打开和关闭某项功能,设置HomePage键值为1,以便禁止修改IE主页,当设置HomePage键值为0,以便允许修改IE主页。主要操作的是注册表的SoftWarePoliciesMicrosoftInternet ExplorerControl Panel键值。
    2022-01-22 04:38:33下载
    积分:1
  • 支付宝免签收款
    支付宝免签收款源码,不用购买接口,免费试用
    2022-01-24 10:18:05下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载