C#编程语言二:核心

一、变量

  1、变量初始化:

    变量是类或结构中的字段,如果没有显式初始化,创建这些变量时,其默认值就是0;

    方法的局部变量必须在代码中显式初始化,之后才能在语句中使用它们的值;

  2、类型推断

    var Num = 0;当作一个int来看待;

    声明了变量,推断出了类型后,就不能改变变量类型了,变量的类型确定后,就遵循其他变量类型遵循的强类型化规则;

  3、变量的作用域

  4、常量

    由于使用易于读取的名称(名称的值易于理解)替代了较难读取的数字或字符串,常量使程序变得更易于阅读;

    常量使程序更易于修改;

    常量更容易避免程序出现错误;

  5、预定义数据类型(值类型和引用类型)

    值类型存储在堆栈中,而引用类型存储在托管堆上;

    CTS类型:C#认可的基本预定义类型并没有内置于C#语言中,而是内置于.NET Framework中。例如,在C#中声明一个int类型的数据时,声明的实际上

是.NET结构System.Int32的一个实例。

    C#预定义值类型:

    整型:

      sbyte-->System.SByte;

      short-->Sytem.Int16;

      int-->Sytem.Int32;

      long-->Sytem.Int64;

      byte-->System.Byte;

      ushort-->System.UInt16;

      uint-->System.UInt32;

      ulong-->System.UInt64;

    浮点类型:

      float-->System.Single;

      double-->System.Double;

      decimal-->System.Decimal;(128位高精度)例如:decimal d = 12.3M;

    bool类型:

      bool -->System.Boolean;

    字符类型:

      char-->System.Char;

    引用类型:  

      object-->System.Object;

        可以使用object引用绑定任何子类型的对象;(装箱和拆箱);

        object类型执行许多一般用途的基本方法,包括Equals()、GetHashCode()、GetType()和ToString();

      string-->System.String;

        可以在字符串字面量的前面加上字符@,在这个字符后的所有字符都看作是其原来的含义——它们不会解释为转义字符:

          string filepath = @"C:\ProCsharp\First.cs"

二、流控制

  1、条件语句:

      if()else()

      switch();

  2、循环:

      for循环;

      while循环;

      do{}while循环;

      foreach循环;

  3、跳转语句:

      goto语句;

          goto lable;

          Console.WriteLine("a");

          lable:Console.WriteLine("b");   

      break语句;

      continue语句;

      return语句;

  4、枚举

      public enum TimeOfDay

      {

        Morning = 0;

        Afternoon = 1;

        Evening =2;

      }

      TimeOfDay time = TimeOfDay.Morning;

三、XML文档

四、处理器指令

  #define和#undef

  #if #elif #else #endif

  #warning #error

  #region  #endregion

  #line

  #pragma

五、C#编程规则

  1、关于标志符的规则:  

    尽管可以包含数字字符,但他们必须以字符或下划线开头

    不能把C#关键字用作标志符

    C#中的约定是命名变量时不使用任何前缀;

  2、命名约定

      名称的大小写:名称都使用Pascal大小写形式,Pascal大小写形式指名称中单词的首字母大写,名称空间和类,以及基类中的成员等的名称都应遵循

    该规则;

      名称的风格:例如ShowConfirmationDialog() 另一个类似的方法命名为ShowWarningDial();

      名称空间的名称:

      名称和关键字不能冲突:

   3、属性和方法的使用

      客户端代码应能读取它的值,最好不要使用只写属性,例如使用SetPassword()方法,而不是Password只写属性。

      读取该值不应花太长的时间。实际上,如果它是一个属性,通常表明读取过程花的时间相对较短。

      读取该值不应有任何细微的和不希望的负面效应;

      可以按照任何顺序设置属性;

      顺序读取属性也应有相同的效果;

   4、字段的用法

      字段的用法非常简单。字段应总是私有的,但在某些情况下也可以把常量或只读字段设置为公有,原因是如果把字段设置为公有,就不利于在以后扩展或修改类 。

原文地址:https://www.cnblogs.com/gengyuanchao/p/2730194.html