1.值类型:所有继承抽象类型System.ValueType的派生类如结构和枚举都是值类型,值类型是隐式密封的(sealed),不能继承。
引用类型:在SDK文档中称为“类”的类型都是引用类型
2.ref与out:
out不用初始化参数,而ref必须先初始化参数。
3.向方法传递可变数量的参数【比较有用】:
缺点:使用可变数量的参数性能会有一定的损失,可使用不同数量参数的重载版本。
public static class Operator { public static int Add(params int[] values) { int sum = 0; if (values != null) { for (int i = 0; i < values.Length; i++) { sum += values[i]; } } return sum; } }
使用示例:
private void Form1_Load(object sender, EventArgs e) { label1.Text = Operator.Add(1, 2, 3, 4, 5, 6, 7).ToString(); }
4.属性:分为无参属性(简称属性,即平时常用的属性)和有参属性(c#中称为索引器,vb.net中称为默认属性)。
属性的根本意义是:允许用一个简化的语法来调用一个方法。(即方便调用的一个简单的方法)