C#编程:理解静态变量和.NET Framework

需积分: 15 3 下载量 119 浏览量 更新于2024-07-13 收藏 4.81MB PPT 举报
"这篇资源主要介绍了C#编程中的静态变量,并通过示例代码展示了其用法。同时,文件还简要概述了C#语言的起源、特点以及.NET框架的工作原理。" 在C#中,静态变量是类级别的变量,这意味着它们在类的所有实例间共享,而不是每个对象都有自己独立的副本。在类声明中使用`static`关键字标识静态变量。例如,`Student`类中的`counter`变量就是一个静态变量,无论创建多少个`Student`对象,`counter`的值都是共享的。 ```csharp public class Student { private int serialNumber; private static int counter = 0; public Student() { serialNumber = counter; counter++; } } ``` 在这个例子中,每当创建一个新的`Student`对象时,`counter`会递增,而`serialNumber`会被设置为当前的`counter`值。这显示了静态变量如何在类的不同实例之间保持其状态。 在主程序`Main`方法中,我们创建了两个`Student`对象并打印了它们的`serialNumber`: ```csharp class MyApp { static void Main() { Student stu = new Student(); Console.WriteLine(stu.serialNumber); // 输出: 0 Student stu1 = new Student(); Console.WriteLine(stu1.serialNumber); // 输出: 1 } } ``` 这里,`stu`和`stu1`的`serialNumber`不同,因为它们分别反映了`counter`在创建时刻的值。 C#语言源自于对现有编程语言(如C++)的改进,旨在提供一种更加高效且易于理解的面向对象编程体验。C#具有以下特点: 1. **面向对象**:C#支持封装、继承和多态等面向对象编程的关键特性。 2. **现代编程语言**:C#引入了垃圾回收、异常处理和自动内存管理等现代编程语言的特性。 3. **.NET框架集成**:C#与.NET Framework紧密集成,可以利用.NET提供的服务,如类型安全、跨语言互操作性等。 4. **灵活性与效率**:C#既保留了C/C++的底层控制灵活性,又引入了高级语言的便捷性。 .NET框架包括 Common Language Runtime (CLR) 和 Just-In-Time (JIT) 编译器,它们负责运行和优化C#代码。CTS(Common Type System)确保不同语言之间的类型兼容性,而MSIL(Microsoft Intermediate Language)是所有.NET语言编译后的中间表示。 当C#代码被编译时,它首先被编译成MSIL,然后在运行时由JIT编译器转换为特定平台的机器码。这种设计使得.NET应用程序可以在多种操作系统和硬件平台上运行。 学习C#不仅可以帮助开发者理解面向对象编程,还能利用.NET Framework的强大功能来开发各种应用程序,包括桌面应用、Web服务和移动应用等。