码迷,mamicode.com
首页 > Windows程序 > 详细

C# Programming Study #1

时间:2015-07-09 12:59:45      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:

引用的时候需要在参数和使用的时候加上 ref 关键字

  •         static bool addnum (ref int val)    //引用
            {
                ++val;
                return true;
            }
    

     

  • 参数数组的概念,可以接受该类型的数组,不限制大小,关键字 params

  •         static int getlength (params int[] vals)    //参数数组
            {
                int sum = 0;
                foreach (int val in vals)
                {
                    sum += val;
                }
                return sum;
            }
    

     

  • 输出参数的概念,类似参数数组,不过声明的时候可以不初始化

  •         static int MaxValue (int[] intArray, out int maxIndex)  //输出参数
            {
                int maxValue = intArray[0];
                maxIndex = 0;
                for (int i = 1; i < intArray.Length; ++i)
                {
                    if (intArray[i] > maxValue)
                    {
                        maxValue = intArray[i];
                        maxIndex = i;
                    }
                }
                return maxValue;
            }
    
  • 委托 delegate : 委托的声明类似函数,但不带函数体,并且要使用 delegate 关键字。委托的声明指定了一个 返回类型 和一个 参数列表
  •         delegate double ProcessDelegate (double param1, double param2);
    
            static double Multiply (double param1, double param2)
            {
                return param1 * param2;
            }
    
            static double Divide (double param1, double param2)
            {
                return param1 / param2;
            }
    
            static void Main(string[] args)
            {
                ProcessDelegate process;
                string input = Console.ReadLine();
                if (input.CompareTo("M") == 0)
                {
                    process = new ProcessDelegate (Multiply);
                }
                else
                {
                    process = new ProcessDelegate(Divide);
                }
                double param1 = 3.123;
                double param2 = 23.12;
                Console.WriteLine("{0}", process(param1, param2));
            }
    
  • 指定类是抽象的 abstract,不能实例化,只能继承,可以有抽象成员
  •     abstract class MyClass1
        {
    
        }
    

     

  • 指定类是密封的 sealed, 不能继承
  •     sealed class MyClass2
        {
    
        }
    

     

  • 成员定义
    1. public     成员可以由任何代码访问
    2. private       成员由类中的代码访问
    3. internal  成员只能由定义它的程序集内部的代码访问
    4. protected   成员只能由类或派生类中的代码访问
  • 定义方法
    1. virtual     方法可以重写
    2. abstract   方法必须在非抽象类的派生类中重写
    3. override   方法重写了一个基类方法
    4. extern      方法定义放在其他地方

C# Programming Study #1

标签:

原文地址:http://www.cnblogs.com/wushuaiyi/p/4632531.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!