学习笔记《C#入门经典(第6版)》C#语言:第3章

        就像我的签名写的一样,作为初学者不可能有太多的原创的东西,但之所以把它写出来就是为了总结自己的学习,也希望能够结交一些志同道合的朋友,仅此而已。欢迎大家进行拍砖,因为别人的拍砖可以让人有更大的进步。

         C#作为类C语言,其语法与C/C++语言是类似的。对于那些与C/C++语言一样的语法,我在学习笔记里不会再重提。书写的顺序基本和原书《C#入门经典》的顺序是一样的。

一:代码大纲功能:使用#region#endregion关键字

         使用#region#endregion关键字来定义可以展开和折叠的代码区域的开头和结尾。例如,可以像下面那样将这些代码行折叠为一行

    在鼠标点击#region左侧的减号之后,就可以将代码折叠为一行,如图:


二:C#中的简单变量类型

1:整数类型

类型 别名 允许的值
sbyte System.SByte 介于 -128~127之间的整数
byte System.Byte 介于 0~255之间的整数
short System.Int16 介于 -32768~32767之间的整数
ushort System.UInt16 介于 0~65535之间的整数
int System.Int32 介于 -2147483648~2147483647之间的整数
uint System.UInt32 介于 0~4294967295之间的整数
long System.Int64 介于 -9223372036854775808~9223372036854775807之间的整数
ulong System.UInt64 介于 0~18446744073709551615之间的整数

2:浮点类型

类型 别名 m的最小值 m的最大值 e的最小值 e的最大值 近似最小值 近似最大值
float System.Single 0 2的24次方 -149 104 1.5 * 10的-45次方 3.4 * 10的38次方
double System.Double 0 2的53次方 -1057 970 5.0 * 10的-324次方 1.7 * 10的308次方
decimal System.Decimal 0 2的96次方 -28 0 1.0 * 10的-28次方 7.9 * 10的28次方

3:文本和布尔类型

类型 别名 允许的值
char System.Char 一个Unicode字符
bool System.Boolean 布尔值:true或false
string System.String 一组字符

4:关于别名:别名就是这些类型在.NET Framework库中的名称。这种类型中的每一种都利用了.NET Framework中定义的标准类型。

为什么要使用标准类型呢?这是因为使用标准类型可以在语言之间进行交互操作。

三:C#中变量的命名

1:命名规则:和C/C++变量的命名一样

2:命名约定:

   变量:对于简单变量,使用camelCase规则。对于比较高级的命名规则使用PascalCase规则。

   名称空间:使用PascalCase规则

   函数名:使用PascalCase规则


四:名称空间

1:默认情况下,C#代码包含在全局名称空间中。这意味着对于包含在这段代码中的项,全局空间中的其他代码只要通过名称进行引用就可以访问它们。

可使用namespace关键字为花括号中的代码块显示地定义名称空间。如果在该名称空间代码的外部使用名称空间中的名称,就必须写出该名称空间中的限定名称。

2:使用关键字namespace定义嵌套的名称空间。如

namespace LevelOne
{
    //code in LevelOne namespace
    namespace LevelTwo
    {
        //code in LevelOne.LevelTwo namespace
        //name "NameTwo" defined
    }
}
//code in global namespace

同时要注意的是:在全局名称空间中,NameTwo必须引用为LevelOne.LevelTwo.NameTwo;在LevelOne名称空间中,可以引用为LevelTwo.NameTwo;在LevelOne.LevelTwo名称空间中,可以引用为NameTwo

3:名称空间的引用:使用using语句简化,如,在下面的LevelOne名称空间中可以直接使用NameTwo

namespace LevelOne
{
    using LevelTwo;
    namespace LevelTwo
    {
        //name "NameTwo" defined
    }
}

4:使用using语句为名称空间提供别名来避免不同名称空间中相同名称所产生的冲突。

如,在下面的LevelOne名称空间中可以把LevelOne.NameThree引用为NameThree,把LevelOne.LevelTwo.NameThree引用为LT.NameThree

namespace LevelOne
{
    using LT = LevelTwo;
    //name "NameThree" defined
    namespace LevelTwo
    {
        //name "NameThree" defined
    }
}

5:控制台应用程序中名称空间的分析,如图:

System名称空间是.NET Framework应用程序的根名称空间,包含控制台应用程序需要的所有基本功能。其余的4个名称空间常常用于控制台应用程序,所以程序包含了它们。








發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章