抽象与封装
内容
抽象是一个过程
收集重要信息,这些信息将为建立一个基础
复杂的系统。封装是开发复杂系统的过程
更易于管理最终用户,而无需担心其内部复杂性。的
抽象和封装之间的区别在于
抽象侧重于确定构建组件的基本组件
封装的重点是隐藏系统的内部复杂性。
内容:抽象与封装之间的区别
- 比较表
- 什么是抽象?
- 例
- 什么是封装?
- 例
- 抽象与封装之间的主要区别
- 结论
比较表
基本的 | 抽象化 | 封装形式 |
定义 | 开发一个 系统。 | 封装是开发复杂系统的过程 |
成就 | 通过封装实现。 | 通过使一个成员成为 类为私有。 |
重点 | 重点在于应该做什么 | 重点在于应如何做。 |
应用 | 在设计阶段。 | 实施期间 水平。 |
例子 | 手机的GUI,它具有一些要单击的图标, 单击执行特定功能。 | 单击图标后, 最终用户对其实施细节一无所知 |
什么是抽象?
抽象是提取关键元素的机制
用于创建系统,没有其实现细节。在
抽象,我们必须只专注于要做的事情,而不是如何做
需要做的。抽象是一个思考过程,它解决了设计中的问题
水平。
分层分类有助于我们处理复杂的抽象。它使我们能够将复杂的系统分解为可管理的部分并生成分层的语义。此外,这是一个概括。
例
让我们以汽车为例,它是由许多子系统创建的,例如引擎,制动器,照明,音响系统,椅子等。作为自行车子系统的“制动器”可以进一步分为前轮制动器和后轮制动器,但通常,我们将所有子系统都视为制动器。因此,我们必须通过分层分类来管理复杂的系统,这有助于我们找出开发系统所需的关键要素。
因此,抽象只是概括什么是元素
对于构建系统至关重要,即仅选择重要的系统。
什么是封装?
封装是面向对象编程的重要功能。这是一种机制
将代码和数据绑定在一起,并使它们免受外部的攻击
干扰。也就是说,封装隐藏了系统的复杂性,
因为这里的关键字是数据隐藏。这类似于保护
隐藏该类中的代码和数据的包装器,由
在类和成员函数/方法之外定义的另一个代码
不是班级成员。
当代码和数据运行时
在该数据上,将它们链接到类中,然后创建此类的对象。
对项目元素的访问受到定义明确的界面的限制
被称为访问说明符。一共有三个
Java和C ++中的指定符公共,私有,安全。
封装特别是通过编写代码来实现的
以及以该数据为私有数据的数据。该类的私有成员无法访问定义的代码
在课外。它有助于防止滥用数据,同时也隐藏了复杂性
代码。
例
让我们以手机为例。在手机上,
可以执行许多功能,例如单击图片,录制视频/音频,
,访问网络等等。您认为这些是
手机的特性。但是,最终用户不需要
在使用这些功能之前,请先了解这些功能的内部复杂性
程序,也不需要更改任何功能的功能。
因此,这种封装方式掩盖了复杂性,
防止滥用数据。
抽象与封装之间的主要区别
- 抽象侧重于所需的组件
构建系统,而封装则着重于隐藏系统的复杂性
系统。 - 在系统的设计阶段完成抽象,并且
当系统具有
已实施。 - 抽象的主要动机是,要进行构建需要做什么
一个系统,而封装的主要目的是,应该如何构建一个系统。 - 通过以下方式实现抽象
封装,而封装是通过使
系统私有。
结论
抽象和封装
两者都是OOP的重要特征。出色的封装可以实现出色的抽象。