C#面向对象:封装与访问修饰符解析

需积分: 9 2 下载量 52 浏览量 更新于2024-07-18 收藏 674KB DOCX 举报
“C#学习笔记概述了面向对象编程的核心概念,特别是封装、抽象以及C#中的访问修饰符的使用。笔记还介绍了C#方法的定义和调用。” 在C#编程语言中,封装是面向对象编程(OOP)的一个基本特征,它允许我们将数据和操作这些数据的方法结合在一起,形成一个独立的单元,称为类。封装的主要目的是保护数据的完整性,防止外部代码直接访问和修改对象的内部状态,确保代码的安全性和可维护性。在C#中,我们可以通过访问修饰符来控制类成员的可见性,从而实现封装。 抽象是另一种关键的OOP概念,它关注的是对象的特征和行为,而不是其具体实现。通过抽象,我们可以创建一个表示通用概念的类,而不必关心其实现细节。抽象类允许我们定义一组接口,但不提供具体的实现,这使得子类可以根据需要去填充这些接口。C#中,抽象类通过abstract关键字标识,而抽象方法则使用abstract和override关键字定义。 C#提供了五种访问修饰符来控制类成员的访问权限: 1. public:公共访问,任何地方都能访问。 2. private:私有访问,只允许在类的内部访问。 3. protected:受保护访问,允许在类自身和其子类中访问。 4. internal:程序集访问,同一程序集内的类可以访问。 5. protected internal:程序集或子类访问,允许在当前程序集或派生自包含类的类型中访问。 例如,如果我们有一个Rectangle类,我们可能会将length和width设为private,确保它们只能在类内部被修改,以防止外部代码直接更改尺寸,而提供public的Acceptdetails()方法来安全地设置或获取这些值。 C#中的方法是执行特定任务的代码块。每个C#程序至少包含一个带有Main方法的类,因为Main方法是程序的起点。方法定义包括访问修饰符、返回类型(如果有的话)、方法名以及方法体。例如,一个简单的“你好”方法定义可能如下: ```csharp public void SayHello() { Console.WriteLine("你好"); } ``` 在这个例子中,`public`表示该方法对外部代码可见,`void`表示方法不返回任何值,`SayHello`是方法名。在需要的地方调用这个方法,就像这样: ```csharp SayHello(); ``` 通过这样的方式,C#提供了一种组织和重用代码的强大方式,同时也确保了代码的模块化和安全性。学习C#的这些基础概念对于理解和构建复杂的面向对象应用程序至关重要。