C# 语言规范7.1版详解

需积分: 0 2 下载量 118 浏览量 更新于2024-12-23 收藏 2.57MB DOC 举报
“C# 语言规范1.2” C#是一种面向对象的编程语言,由微软公司开发,主要用于构建Windows应用程序、Web应用以及移动应用等。C# 1.2版本的语言规范详细阐述了该语言的基本语法、类型系统、变量、表达式、语句、类与对象等核心概念,为开发者提供了全面的指导。 1. **简介**: - **Hello World**:通常在学习新语言时,"Hello, World!"程序是第一个示例,它演示了基本的输出功能。 - **程序结构**:C#程序由一个或多个源文件组成,每个源文件包含类定义,类包含了程序的代码和数据。 2. **类型和变量**: - C#有多种内置类型,包括整型、浮点型、字符型、布尔型等,同时支持引用类型(如对象和数组)和值类型(如结构)。 - 变量是存储数据的容器,每个变量都有特定的数据类型,决定它可以存储的值的类型和范围。 3. **表达式**: - 表达式是编程语言中的计算单元,可以是常量、变量、运算符或函数调用的组合,它们的结果是一个值。 - C#支持算术、比较、逻辑等多种类型的表达式。 4. **语句**: - 语句是程序执行的基本单元,如赋值语句、控制流语句(如if、for、while)、方法调用等。 5. **类与对象**: - **成员**:类可以包含字段(变量)、方法、属性、索引器、事件、运算符和析构函数等成员。 - **访问修饰符**:public、private、protected、internal决定了成员在不同范围内的可见性。 - **基类**:类可以继承自另一个类,从而获取其成员。 - **字段**:类中的数据成员,存储类实例的状态。 - **方法**:定义类的行为,可以有参数和返回值。 - **参数**:方法接收输入的值,可以是位置参数、命名参数或可选参数。 - **方法体和局部变量**:方法内部的代码块和临时变量。 - **静态与实例方法**:静态方法属于类,不依赖于类的实例;实例方法则属于类的每个实例。 - **虚方法、重写和抽象方法**:实现多态性,允许子类修改父类的行为。 - **方法重载**:同一个类中,方法名相同但参数列表不同的方法。 - **其他功能成员**: - **构造函数**:用于初始化类的新实例。 - **属性**:提供对类字段的封装,支持getter和setter。 - **索引器**:允许通过索引访问类的成员,类似数组。 - **事件**:支持事件驱动编程,用于通知订阅者特定事件的发生。 - **运算符**:可以重载常见的算术、比较和逻辑运算符。 - **析构函数**:在对象即将被销毁时执行清理操作。 6. **结构**: - 结构是值类型,不同于类的引用类型,它们的实例在栈上分配,拷贝时不共享状态。 7. **数组**: - 数组是同类型元素的集合,可以是一维或多维。 8. **接口**: - 接口定义一组方法签名,不包含实现,类可以实现一个或多个接口来提供特定的功能。 9. **枚举**: - 枚举是一种值类型,用于定义一组命名的常量。 10. **委托**: - 委托是引用类型,表示对方法的引用,支持事件处理和回调机制。 11. **特性(Attributes)**: - 特性提供元数据,用于在运行时提供额外的信息,如标记方法为重试或记录日志。 2. **词法结构**: - **程序**:源代码文件的集合。 - **语法**:定义了程序的结构和形式规则,包括关键字、标识符、运算符、注释等。 C# 1.2版规范涵盖了C#语言的核心元素,为开发者提供了深入理解C#编程的基础。通过遵循这些规范,开发者可以编写出高效、可维护的代码。