C# Programming Study #1
引用的时候需要在参数和使用的时候加上 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 { }
成员定义
public 成员可以由任何代码访问
private 成员由类中的代码访问
internal 成员只能由定义它的程序集内部的代码访问
protected 成员只能由类或派生类中的代码访问
定义方法
virtual 方法可以重写
abstract 方法必须在非抽象类的派生类中重写
override 方法重写了一个基类方法
extern 方法定义放在其他地方
,温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/70036.html