抽象类和匿名方法的使用

来源:互联网 发布:免费工程造价软件 编辑:程序博客网 时间:2024/06/05 00:46

问题:

实验5---第4题
创建抽象类A,(包含一个求两个数之和的抽象方法,)

创建子类B(重写求和方法,使得可计算整数,双精度,字符串)

代码:

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1{    class Program    {        static void Main(string[] args)        {            B S1 = new B();            S1.add(123,123);            S1.add(12.3, 45.6);            S1.add("hello", " c#");            Console.ReadKey();        }    }    //抽象类A    abstract class A    {        public abstract void add(int a, int b);    };//注意标点    class B : A    {        public override void add(int a, int b)//同一个函数只需要这一个重写符号就可以        {                        //Console.WriteLine("两整数相加的和是:{0}", a+b);            Console.WriteLine(a + b);                    }                public  void add(double a, double b)        {                       // Console.WriteLine("两双精度数相加的和是:{1}", a + b);           Console.WriteLine("两双精度数相加的和是:{0}", a + b);            //一个console.writeline({0},{1}....)是这样从0开始输出                    }        public  void add(string a, string b)        {                        //Console.WriteLine("两字符串相加是:{2}", a + b);            Console.WriteLine("两字符串相加是:{0}", a + b);                  }    }}

问题:

实验6-第3题
计算整数型数组各元素之和的功能


代码:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Collections;namespace 匿名文件{    delegate void MyDelegate(int x, int y);    class Program    {                static void Main(string[]args)        {                      //  int sum = 0;            string s;            int s1,s2;            int sum=0;            MyDelegate add = delegate(int m, int n)                   {                   sum = sum+m+n;                   };            Console.WriteLine("输入exit结束,输出所有数的和");           while (true)          {               s=Console.ReadLine();               if (s == "exit")               {                   Console.WriteLine("{0}",sum);                   break;               }                                 else               {                      s1=int.Parse(s);                   s=Console.ReadLine();                   if (s== "exit")                   {                       Console.WriteLine("{0}", sum+s1);//防止计算奇数个数的和                       break;                   }                   s2 = int.Parse(s);                   add(s1,s2);               }                   }            Console.ReadKey();        }    }}


总结:

注意抽象类的继承同一个函数只需要一个override就可,

注意输出函数console.writeline({0},{1},{2},.....);一个语句中的变量是从0开始的。


0 0
原创粉丝点击