C#(13.5)面向对象 知识点*

【知识点】

(泛型)在C#中,任何一个类型直接或者间接继承于Object。

*     值类型和引用类型的存储位置

      值类型直接存储其值,引用类型存储对值的引用,值类型存在堆栈上,引用类型存储在托管堆上,值类型转为引用类型叫做装箱,引用类型转为值类型叫拆箱。


一、类,结构体,枚举的区别与使用

枚举  类型通常后面是Type Mode

结构体 用来存一些简单数据 不用来继承  值类型

可以继承  引用类型

三、枚举中获取某一整数值关联的枚举数的名称(运用GetName方法 typeof方法获得枚举值)

string str = Enum.GetName (typeof(Week) ,6);

string str_1 = ((Week)7).ToString ();

Console.WriteLine (str + ", " + str_1);

、值类型在未赋值时默认值为 “0” ,引用类型在未赋值时它的默认值为 “null”;

五、假如人是一个类 腿是人拥有的一个字段  腿可以跑是一个方法  能不能跑是一个属性

六、方法名在类内部一般情况下大小写都可以访问,但如果Set方法里有特殊的操作(限制) 那么用大写

七、this  指代调用时的当前对象,谁调用就是谁,主要是为了区分全局字段和局部变量,

       不重名时  this.表示的就是全局变量;重名时,优先使用局部变量


类和结构体的不同

不同:

1.在结构体中可以声明字段,但是声明字段的时候是不能给初始值的

2.关于构造函数:

   a、结构体中,默认构造函数一直存在,而类中如果添加了自定义构造函数必须手动写出默认构

   造

    b、在结构体的构造函数中,必须要为结构体的所有字段赋值.类中不需要

3、创建结构体对象可以不使用 new 关键字.直接声明 1 个变量就可以.但是这样的话,结构体对象

中的字段是没有初始值的,所以在使用字段之前必须要为这个字段赋值.

4、结构体是值类型 类是引用类型.

5、结构体不能继承,类可以继承


什么时候用结构体什么时候用类

C#(13.5)面向对象 知识点*_第1张图片

base this 关键字

(它们都是对象)

C#(13.5)面向对象 知识点*_第2张图片

你可能感兴趣的:(C#(13.5)面向对象 知识点*)