C#--封装、继承、多态

一、封装 就是把一个或多个项目封闭在一个物理的或者逻辑的包中(或者说是将数据或函数等集合在一个个的单元中)。在面向对象程序设计方法论中,封装是为了防止对实现细节的访问,其意义在于保护或者防止代码(数据)被我们无意中破坏。

抽象和封装是面向对象程序设计的相关特性,抽象允许相关信息可视化,封装则是开发者实现所需级别的抽象。封装既可以封装成员变量,又可以封装成员方法C# 封装根据具体的需要,设置使用者的访问权限,并通过访问修饰符来实现。一个访问修饰符定义了一个类成员的范围和可见性。

C# 支持的访问修饰符如下所示:

访问修饰符 范围 备注
public 所有对象都可以访问 允许一个类将其成员变量和成员函数暴露给其他的函数和对象,任何公有成员可以被外部的类访问。
private 对象本身在对象内部可以访问

 允许一个类将其成员变量和成员函数对其他的函数和对象进行隐藏,只有同一个类中的函数可以访问它的私有成员,即使是类的实例也不能访问它的私有成员。

protected 只有该类对象及其子类对象可以访问 允许子类访问它的基类的成员变量和成员函数,这样有助于实现继承。
internal 同一个程序集的对象可以访问 允许一个类将其成员变量和成员函数暴露给当前程序中的其他函数和对象。换句话说,带有 internal 访问修饰符的任何成员可以被定义在该成员所定义的应用程序内的任何类或方法访问。

二、继承

继承是面向对象程序设计中最重要的概念之一。继承允许我们根据一个类来定义另一个类,这使得创建和维护应用程序变得更容易,同时也有利于重用代码和节省开发时间。

当创建一个类时,我们不需要完全重新编写新的数据成员和成员函数,只需要设计一个新的类,让它继承已有的类的成员即可。这个已有的类被称为的基类,这个新写的类被称为派生类。

继承的思想实现了属于关系。例如,哺乳动物属于动物,人属于哺乳动物,因此人属于动物。

1.基类和派生类

一个类可以派生自多个类或接口,这意味着它可以从多个基类或接口继承数据和函数。

扫描二维码关注公众号,回复: 8771161 查看本文章

2.基类的初始化

派生类继承了基类的成员变量和成员方法。因此父类对象应在子类对象创建之前被创建。我们可以在成员初始化列表中进行父类的初始化。

3.C# 多重继承

多重继承指的是一个类别可以同时从多于一个父类继承行为与特征的功能。与单一继承相对,单一继承指一个类别只可以继承自一个父类。

 

三、多态

多态是同一个行为具有多个不同表现形式或形态的能力,或者说不同的对象对同一消息作出不同的响应。

1.多态性意味着有多重形式。在面向对象编程范式中,多态性往往表现为"一个接口,多个功能"。

2.多态性可以是静态的也可以是动态的。在静态多态性中,函数的响应是在编译时发生的。在动态多态性中,函数的响应是在运行时发生的。

3.在C#中,每个类型都是多态的,因为包括用户定义类型在内的所有类型都继承自 Object。

 

发布了67 篇原创文章 · 获赞 23 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_39071599/article/details/103322442