当前位置:首页 > Windows程序 > 正文

C#基础总结 .

2021-03-29 Windows程序

类是一组对象的属性和行为特征的抽象描述,对象是类的实例。

类是抽象的,对象是具体的。    抽象是有选择的忽略。   

封装:使数据及方法结合;控制访问可见性。  

允许控制---只能通过公共的方法来访问对象。    允许变化---私有对象的类型发生变化也不会影响对象的使用。   

静态数据描述了一个类的所有对象的信息。 

静态方法只能访问静态数据,通过类来访问而不是对象。方法是公共的,数据是私有的。
    声明一个类的对象并不会创建类的对象--使用new操作符创建对象。然后用对象.方法来处理数据。    this关键字指向当前对象(当前类的)---当不同作用域中的名称标识冲突时特别有用。   

class BankAccout

{

.....public void SetName (string name)

{

this.name(指的是私有字段的) = name;

}
private string name;

}
访问修饰符:public 只要知道所在的命名空间就可进行访问private 只对所在的类或结构可见。
常量:是一个表示恒定不变的数值的符号。

字段: 表示一个数据的值,它或是只读的,或是读写的可分为静态字段和实例字段。初始化是可选的,初始化的值必须在编译时可以确定下来,结构的字段值不能被初始化。只读字段必须声明或在构造函数中进行初始化,不一定在编译时就要确定下来,值不能改变。

方法:是一个函数,用来改变或查询一个类型(静态方法)获知一个对象(实例方法)的状态。方法一般需要读写类型或对象的字段。静态方法只能访问静态数据(字段)


构造函数及析构函数
构造函数首先是一个方法。

1.分配内存:使用new关键字从托管堆中分配内存

2.初始化对象的附加成员(方法表指针及内部保留字段)

3.使用构造器初始化对象-使用类的名字后跟括号。

CLR要求每个类至少定义一个构造函数。(没有的话,编译器会自动创建缺省的构造函数)缺省的构造函数的特点:pubic 访问级别;与类同名;没有返回类型(包括void);无参数;将所有的字段初始化为0,FaLSE,null。

构造函数可以被重载(同作用域,同名称,不同参数;可实现用不同的方式对对象进行初始化,可有不同的访问限制)重载的构造函数可能包含重复的代码。

结构的构造函数:编译器总是生成一个缺省的构造函数,缺省的构造函数将所有的字段初始化为0。结构中声明的构造函数不会自动将字段初始化为0,必须对所有的字段进行初始化,不能声明缺省的构造函数,不能将声明访问修饰符为proctecd的函数。

私有的构造函数可以组织对象的创建,不允许用new来实例化新的实例,静态的方法不需要实例化类就可以使用此方法用类.静态方法调用。

静态构造函数用于初始化类型的静态字段。(不能包含访问修饰符;必须是无参的;默认情况下,没有静态构造函数,定义的话也只能有一个静态构造函数;内联的初始化会自动生成构造函数。)不支持静态构造函数的重载。

静态构造函数的访问限制私有,其调用由CLR负责。对象生命期创建对象:使用new关键字来分配内存;使用构造函数在所分配的内存中初始化对象。使用对象:调用对象的方法。销毁对象:内存被回收。

局部变量---在方法中定义的变量析构函数是用于实现对象清理的机制。

方法及参数调用方法在同一个类中调用此方法--使用方法的名字后跟参数列表及括号。调用其他类中定义的方法--必须同时指定包含此方法的类;被调用的方法必须声明了相应的访问修饰符如public。

嵌套调用--可以在方法中调用其他的方法。

局部变量:当方法开始执行时创建,对方法来说是私有的,退出方法是被销毁。

共享变量:在类级别定义的变量时共享变量,可以被多个方法同时访问。

作用域冲突:当局部变量与共享变量存在命名冲突时,编译器不会警告。优先使方法内的局部变量用共享变量时要用this指定。声明及调用参数:声明参数--将参数放在方法名后的括号内;为每一个参数定义参数名及类型。调用参数的方法--为每一个参数指定值。传递参数值类型按值传递--传递给方法的将是值类型实例的一个拷贝,调用方法中的实例不会受到影响。

引用类型俺值传递--参数的传递时通过传递指向对象的引用来完成的,引用(指针)本身是按值传递的;方法可以改变引用对象。

引用参数:对参数内存地址的引用。使用引用参数:在方法中声明及调用时使用ref关键字;

变量的值及类型必须匹配;在方法内对参数所做的改变会影响到调用者;在调用方法之前必须指定参数的值。

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/69686.html