C#的面向对象程序设计.pptVIP

  • 45
  • 0
  • 约2.56万字
  • 约 78页
  • 2017-02-28 发布于湖北
  • 举报
C#的面向对象程序设计

6.6.2 使用索引指示器访问对象 使用索引指示器,可以像数组一样访问类的对象,只不过通过数组下标访问的是存储在数组中的数组元素,而索引指示器访问的是类的对象。 使用“常规的”C#数组,下标数字必须是整型值。索引器的一个优点就是程序员可以定义整型和非整型两种下标。 例:using System; class Index { string[] name=new string[]{A,B,C,D}; int i; public int this[string idx] { get { for(i=0;iname.Length;i++) { if(idx==name[i]) break; } if(i==name.Length) return -1; else return i+1; } } static void Main() { Index a=new Index(); if(a[A]!=-1) Console.WriteLine(字符A是序列中的第{0}个字符,a[A]); else Console.WriteLine(序列中没有该字符); } } 运行结果如下: 委托,顾名思义,就是中间代理人的意思。通俗地说,委托是一个可以引用方法的对象,即是说委托可以调用它所指向的方法。 事件是建立在委托基础上的另一个重要特性。从本质上说,事件就是当某个事情发生时,会自动去执行一些语句。事件是特殊化的委托,委托是事件的基础。 6.7 委托和事件 6.7.1 委托 C#中使用委托的具体的步骤是: (1) 声明一个委托,其参数形式一定要和想要 包含的方法的参数形式一致。 (2) 定义所有你要定义的方法,其参数形式和 第一步中声明的委托对象的参数形式必须 相同。 (3) 创建委托对象并将所希望的方法包含在该 委托对象中。 (4) 通过委托对象调用包含在其中的各个方法。    步骤1: 声明一个委托 格式: [修饰符] delegate 返回类型 委托名(参数列表); 例: 委托的声明 public delegate void MyDelegate1(string input); public delegate double MyDelegate2( ); 声明一个委托的对象,与声明一个普通类对象的方式一样: 委托名 委托对象名; 委托对象的声明。 MyDelegate1 a; MyDelegate2 b; 步骤2:定义方法,其参数形式和步骤1中声明的委托对象的必 须相同。 例:定义方法 class MyClass1 { public void dMethod1(string input) { Console.WriteLine(“Method1传递的参数是 {0},input); } public void dMethod2(string input) { Console.WriteLine( Method1传递的参数是 {0},input); } }   步骤3:创建一个委托对象并将上面的方法包含其中 例:在委托对象中包含方法。 MyClass1 c2=new MyClass1(); MyDelegate1 d1;

文档评论(0)

1亿VIP精品文档

相关文档