C#学习笔记(一)
程序员文章站
2022-04-30 19:37:01
...
1. 类(class)在托管的堆(heap)上,结构体(struct)在栈(stack)上;
2.类中有:数据成员,函数成员,
3.函数成员有:方法,属性,构造函数,终结器(finalizer),运算符和索引器
3.1方法分为实例方法和静态方法,含义同C++,静态方法调用用.运算符
3.2构造函数,含义同C++
3.3终结器,含义同C++的析构函数
3.4运算符,含义同C++的运算符重载
3.5索引器,允许对象以数组或者集合的方式进行索引
4.要让值类型传递引用,需要加ref关键字,调用的时候也需要加ref关键字,传递给函数的参数必须初始化,使用out关键字时可以不对其进行初始化
5.支持重载,但是不支持默认参数
6.操作属性时,会用到一个叫【属性管理器】的东西,操作属性实际上是调用一个方法,属性定义如下:
private string foreName; Public string ForeName { get { return foreName; } set { foreName = value; } }
省略set可以创建只读属性
7.如果访问器中没有任何逻辑,可以使用默认的
public string ForeName{get; set};
会自动生成forName的访问,这些属性方法会被运行时优化成内联的代码
8.静态构造函数,没有访问修饰符,只执行一次,在访问类成员之前执行,用于初始化静态变量和属性,不能带有参数。一个类只能有一个静态构造函数。
9.增加readonly关键字作为只读字段,该字段可声明为静态字段,必须显式声明,该字段可以被改变,但只能在构造函数中
10.匿名类型var
11.静态类,使用static关键字,只有静态属性和方法,不能创建实例
12.扩展方法,使用一个静态类来为一个类增加新功能:
public static class MoneyExtension { public static void addToAccount(this Money money, decimal amount) { money. Amount += amount; } }