黑马程序员技术交流社区
标题:
一个委托delegate
[打印本页]
作者:
罗代势
时间:
2012-12-16 16:17
标题:
一个委托delegate
class Program
{
static void Main(string[] args)
{
Test test = new Test(); //实例一个Test类的test对象
string s = "调用委托"; //定义一个字符串
DeShow ds = new DeShow(test.Show); //实例一个委托ds对象
ds += Show1; //使用运算符"+="添加Show1方法到委托对象中
ds(s); //调用委托
MethodShow(test.Show); //调用包含委托为参数的方法,并且把test.Show方法传入
Console.ReadKey();
/*结果:
调用委托
字符串的长度:4
显示一个普通方法!
----------------------------------
字符串的长度:34
-----------委托作为参数-----------
字符串的长度:28
----------------------------------
字符串的长度:34
*/
}
/// <summary>
/// 定义一个包含委托为参数的方法
/// </summary>
static void MethodShow(DeShow deShow) //传入字符串的方法,且委托作为参数
{
deShow("----------------------------------");
deShow("-----------委托作为参数-----------");
deShow("----------------------------------");
}
static void Show1(string str1)
{
Console.WriteLine("显示一个普通方法!");
}
}
public class Test
{
public void Show(string Msg) //显示方法
{
Console.WriteLine(Msg);
Console.WriteLine("字符串的长度:{0}",Msg.Length);
}
}
public delegate void DeShow(string str); //定义一个委托类
作者:
许庭洲
时间:
2012-12-16 21:20
值得学习ing!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2