本帖最后由 赵威 于 2013-4-29 09:12 编辑
namespace 委托练习2
{
class Program
{
static void Main(string[] args)
{
class1 c1 = new class1();
c1.DoSth(M1 );
Console.ReadKey();
}
static void M1()
{
Console.WriteLine(System .DateTime .Now .ToString ());
}
static void M2()
{
File.WriteAllText("abcd.txt", System.DateTime.Now.ToString(), Encoding.Default);
}
}
public class class1
{
public void DoSth(MyDelegate md)//这个地方的委托变量,其实就相当于一个占位符一样,只不过占位符是用{0}来表示,而这里是用委托变量来占位,占的这个位置就是以后放置方法用的
{
Console.WriteLine("=============================");
Console.WriteLine("=============================");
Console.WriteLine("=============================");
if (md != null)
{
md();
}
Console.WriteLine("=============================");
Console.WriteLine("=============================");
Console.WriteLine("=============================");
}
}
public delegate void MyDelegate();
}
在复习委托的时候遇到这么个问题:就是上面的c1.DoSth(M1 );,感觉委托和多态有点像,二者的区别到底体现在什么地方?在用委托的时候需要注意什么?
|