抽象与封装的区别(附表)

抽象与封装的区别(附表)

面向对象编程是一种计算机编程模型,它围绕对象或数据而不是逻辑和功能来组织软件设计。 封装和抽象是面向对象编程的两个基本概念。

抽象与封装

抽象和封装之间的主要区别在于抽象是一种 隐藏代码细节及其实现方式的过程。 另一方面,封装是隐藏数据并控制代码可见性的过程。 管理抽象的对象是封装的,而封装的对象不需要抽象。

抽象是隐藏不必要的数据并仅显示相关数据的过程。 它是面向对象编程的一个基本概念,它降低了代码的复杂性,同时增加了可读性。

封装是将数据成员与成员变量绑定在一起的过程。 它防止直接访问变量,从而保护隐私并降低代码的可见性。

抽象与封装对比表 

比较参数 抽象化 封装
定义 这是一个隐藏不需要的数据,只显示相关数据的过程它是一个将数据成员与成员变量绑定在一起的过程
这是一个设计层面的过程这是一个实现级别的过程
它是如何实施的可以通过java中的类和接口来实现可以通过java中的类来实现。 通过提及访问说明符(例如 private、protected 或 public)来确保隐私
应用领域它用于降低项目设计阶段的复杂性它用于在实施阶段提供隐私和控制数据透明度
关键能力 它专注于类实例可以做什么它有助于数据的绑定并保持数据的透明度

什么是抽象?

抽象是仅向用户显示相关数据的过程。 这是通过使用抽象类和接口的方法来实现的。 从更大的池中选择数据,然后创建相似类别的类。 它是面向对象编程的基本概念,可降低代码的复杂性。

为了实现抽象并仅显示相关数据,使用了访问说明符。 它有助于制定高级代码并限制代码重复。

通过仅向用户展示相关且有价值的信息来维护应用程序的安全性。 程序或应用程序的功能可以更改或更新,不会给最终用户带来任何问题。

通常抽象类和抽象被认为是相同的。然而,抽象类和抽象过程是不同的。抽象类被制定为在子类或子类中使用它们。同时,抽象是通过访问说明符仅显示必要数据的过程。

在设计或规划阶段以及用户界面交互期间,将审查和纠正可能由程序引起的问题。 抽象类和接口的方法用于隐藏实现障碍。 将代码中需要进一步抽象的对象进行封装。 抽象的过程围绕着代码功能的知识而不是逻辑的应用。

什么是封装?

封装是将数据和对其进行操作的代码处理为单个单元。 单个单元包含与数据执行的相同功能,称为类。 封装的使用使应用程序更易于使用和理解。 用户对代码进行操作,不需要代码的内部机制。

访问修饰符可以控制向公众或某些人提供数据访问权限的选择。 在此过程中,数据像保险箱一样受到限制和保护,因此不会被篡改。

封装可能与抽象相混淆。 然而,它在安全性方面更具体地隐藏数据。 它在最后一级通过 getter 和 setter 方法实现。 获得访问权限的人可以通过此方法查看并更改私有成员的值。

根据提供的访问范围,数据成员分为公共、私有或受保护。 编译器默认将所有数据成员和函数设为私有。 但是,这可以使用访问修饰符进行更改。

抽象和封装之间的主要区别 

  1. 抽象是隐藏不必要的数据并仅显示相关数据的过程。 另一方面,封装是将数据成员与成员变量绑定在一起的过程。
  2. 抽象是一个设计级的过程。 另一方面,封装是一个实现级的过程。
  3. Java中的抽象可以通过类和接口来实现。 另一方面,封装可以通过Java中的类来实现。 通过提及访问说明符(例如 private、protected 或 public)来确保隐私。
  4. 抽象用于降低项目设计阶段的复杂性。 另一方面,封装在实现阶段提供隐私和控制数据透明度。
  5. 抽象关注类实例可以做什么。 另一方面,封装有助于绑定数据并保持数据的透明度。

结论

在数据抽象过程中,只有必要的信息或数据对用户可见,而在封装过程中,数据被转换为单个单元。 这种执行相同功能的单一数据单元称为类。 相似类别的类是通过从大量数据库中选择数据来创建的。

抽象帮助用户制定高级代码。 它有助于提高数据对用户的透明度,并最大限度地减少代码重复。 该过程还增加了数据的可读性并降低了复杂性。

封装的过程有助于用户理解代码并轻松使用它。 当提供相似的数据组时,通过封装为相同的数据类型创建类。 该类可以控制数据函数的可见性。

参考资料

点1
一个请求?

我付出了很多努力来写这篇博文,为您提供价值。 如果您考虑在社交媒体上或与您的朋友/家人分享,这对我很有帮助。 分享是♥️

尼迪的头像

关于尼迪

你好!我是尼迪。

在 EHL,一切都是关于休闲娱乐的美味、简单食谱。所以来和我一起去海滩,放松并享受美食吧。

发表评论

您的电邮地址不会被公开。 必填带 *