C#知识归纳

1 .netframework简介

        .netframework运行于操作系统上,提供良好的跨语言性,它包含两个内容:公共语言运行时(CLR)和类库集(FCL)。

        MSIL微软中间语言,当编译.net支持的语言编写的代码的时候,输出的代码为MSIL。

        公共语言运行时(CLR)包含:通用语言规范(CLS保证语言互操作的一组规则)和公共系统类型(CTS包含了.net支持个语言兼容性的数据类型和功能);

2 C#中的变量和常量

   C#中基本的数据类型有两种:一种是值类型,一种是引用类型;

   而值类型包括有:简单类型,结构类型,枚举类型;  简单类型有 int , flaot ,decimal,bool 等

3 C#变量命名方法

   帕斯卡命名法:如果由多个单词组成,每个单词首字母要大写。

   骆驼命名法:第一个单词全部小写,后面的单词大写。

4 C#中的常量:const 与  readonly

 const:静态常量,必须声明时就初始化,且只能用常数值初始化。

 readonly:动态常量,可以声明时不初始化,只能在构造函数中初始化,但必须每一个构造函数中都要初始化,而且可以使用变量值初始化。

5 C#中装箱和拆箱

 装箱:值类型转换成引用类型。

 拆箱:引用类型转换成值类型。

 值类型是存在栈中的,而引用类型在堆中存放对象的地址,对象本身存放在栈中

6 C#语法

数组的五种声明方式

 第一种

int [] arry;

arry=newint[2];


第二种

int [] arry=newint[2];

第三种

int [] arry={3,2,1};

第四种

int [] arry=newint []{3,2,1};

第五种

int [] arry=newint[4]{1,2,3,4};

7 C#枚举
    枚举是事先定好一系列有限值,从而限定数据值的范围

   public enum Days

   {

     mondy=0,

    tuesday=1,

    Thread=2

   }

8 C#中的面向对象
    析构函数:函数名与构造函数名一样,~函数名(),不接受参数,由垃圾回收器自动调用(GC.Collect()调用垃圾回收器)

    virtual关键字:C#中,子类要重写父类的方法,必须把父类的方法标识为virtual(虚拟的),同时重写方法用override修饰
    new 关键字:new关键字:在子类中定义的一个和父类方法签名一样,但是个全新的方法。并非重写父类的方法。
    base关键字:用base关键字调用父类的方法

    访问修饰符:
    public 公有的,
    internal 在一个项目中的,
    protected有父子关系的类,
    private仅所属类的成员

    注意:如果有一个类既继承类又实现接口,类名要写在接口名前面。

     属性,索引器,委托,事件

     属性:访问修饰一般为public,首字母大写。属性内有get和set访问器,get内必须要有return,set内有value关键字,代表从外部接受的值。
     索引器:索引器的作用:像处理数组一样去处理类的对象。

     委托:相当于函数指针,可使程序在运行是再指定具体要运行的方法。
    (1) 定义委托:Public delegate int Call()
    (2) 实例化委托:objcall=new Call(方法名)
    (3) 调用委托:objcall();
 


 

原文地址:https://www.cnblogs.com/mysilence/p/3333896.html