• 第二部分 语法篇
    • 第3章 标识符和关键字">第3章 标识符和关键字
      • 3.1 标识符">3.1 标识符

    第二部分 语法篇

    第3章 标识符和关键字

    在第3章中,我们已经通过一段简单的"Hello World"代码学习了C#编程的一些基本知识,例如:命名空间、类、方法,如果大家不熟悉Visual Studio 2010的使用,建议先阅读附录A的相关内容。本章将继续学习两个重要的基本概念:标识符和关键字。

    3.1 标识符

    我们继续秉承“从实践中学习”的理念,先来看一段代码,如代码清单3-1所示。

    代码清单3-1 标识符


    1 using System;

    2

    3 namespace ProgrammingCSharp4

    4{

    5 class IdentifierSample

    6{

    7 static void Main()

    8{

    9 string_questionMessage="What's your name?";

    10 string yourName;

    11 Console.WriteLine(_questionMessage);

    12 yourName=Console.ReadLine();

    13 Console.WriteLine("Your name is{0}",yourName);

    14 Console.ReadKey();

    15}

    16}

    17}


    先来看看这段代码都有些什么?

    ❑命名空间:ProgrammingCSharp4

    ❑类:IdentifierSample

    ❑类的函数成员:Main()

    ❑Main()函数中的两个字符串变量:_questionMessage和yourName

    这些元素我们在第2章基本都已接触过了,以上几个元素构成了这段代码的主要框架。在本章中,我们重点关注的是如下几个字符串:ProgrammingCSharp4、IdentifierSample、Main以及_questionMessage、yourName,它们都是标识符。标识符是一种特定的字符串,用于对诸如命名空间、类、方法、局部变量以及参数元素等进行命名。这里的“特定”意味着并非所有的字符串都有资格成为标识符。要作为一个标识符,一个字符串必须满足如下条件:

    ❑只能为字母(包括大小写)、数字、@符号以及下划线"_"。

    ❑数字不能放在首位,但下划线可以。

    ❑字符"@"只能放在首位,不能放在任何其他位置。

    图3-1演示了这种规则。

    第二部分 语法篇 - 图1

    图 3-1 标识符命名规则

    C#是一种大小写敏感的语言,即使是相同的2个字符串,只是大小写不同,也是2个不同的标识符。例如,myVar和MyVar是两个不同的标识符。定义或者选择标识符的一条最佳实践是:标识符应该尽可能有意义,并且具有一定的自描述性。换句话说,就是从标识符的字面含义就可以了解该标识符所代表元素的作用。例如,虽然Person和MyVar都是合法的标识符,但前者较后者好,因为前者表达出了它所代表的意义,这对于提高代码的可读性十分有益。无论是一个人还是一个团队,无论是一个小型项目还是一个大型项目,养成良好的编程习惯都是非常有益处的。它使代码的维护、纠错更加容易,也让接手你的代码的人更容易理解你的代码。

    我们已经知道了什么是标识符,以及一个合法标识符所要遵守的原则。那么,是不是就意味着,只要不违反上述原则,就可以使用任意的字符串做标识符呢?答案是否定的,C#中还有这样一些字符串,它只限于语言本身使用,这些被C#保留的字符就叫做关键字,又名保留字。