数据隐藏和数据封装

Anonim

数据封装

对于计算机新手来说,数据隐藏和数据封装可能意味着同样的事情。但是,这两个概念之间存在重大差异。

数据封装和数据隐藏属于对象类,面向编程,可以用于不同的编程语言,如C,C ++等。它们被认为是面向对象编程的两个主要概念。

数据封装和数据隐藏都涉及对象(分类为值,数据,结构或函数),类(数据和方法的集合),计算机代码和方法。

数据封装是组合和组合元素的过程,以便创建新实体并将私有数据包装到类中。封装涉及数据和方法的实现。具有内部方法的数据被保护到胶囊中,而这些方法用于访问其中的数据。以这种方式,胶囊内的所有数据和要求的组装和分组使其独立于对象一起起作用。

封装还涉及类对用户隐藏的方式以及如何通过使用方法解锁封装来逆转该过程。

在数据封装中,除非由程序员指定或编程,否则胶囊及其内部的对象可以被分类为私有或公共。

另一方面,数据隐藏是隐藏对象或功能的细节的过程。它也是编程中的一种有效技术,可以提高数据安全性并降低数据复杂性。

数据隐藏的一个表现形式是它被用作在代码被分解并从对象隐藏之后将信息隐藏在计算机代码内的方法。处于数据隐藏状态的所有对象都是隔离的单元,这是面向对象编程的主要概念。

内部数据被分类为私有或不可从系统中的其他对象,类和API访问。数据对外人来说是不可见的,无论是对象,其他类还是用户。

数据封装是数据隐藏的主要机制之一。数据隐藏通过嵌套数据或将其排列到胶囊中来实现。

数据隐藏有很多用途,包括:

  • 安全目的和数据保护,防止滥用和未经授权的访问;
  • 利用变化的功能从外部移动困难;
  • 隐藏数据,防止未经授权的用户访问或使用,特别是试图操纵敏感数据或程序的计算机黑客;
  • 隐藏数据的物理存储布局并避免链接到不正确的数据。 (如果程序员链接到所述数据,程序将显示错误以保护内容。)

通常在易失性和敏感数据上使用或执行数据隐藏。这些类型的数据对于有效和顺利地运行程序至关重要。如果以某种方式操纵这些类型的数据,则程序的任何用户将无法正确使用该应用程序。程序员必须重写程序并在进一步使用之前修复错误。

摘要

  1. 数据封装是一个过程,而数据隐藏既是一个过程,也是一种技术。它们都属于面向对象编程的范畴。
  2. 数据封装中的数据是公共的或私有的,而数据隐藏中的数据是私有的和不可访问的。
  3. 数据封装是数据隐藏的机制之一。
  4. 数据封装,关注的是整合,这与数据有关,隐藏了降低数据复杂性的目标。另一方面,数据隐藏不仅包括较少的数据复杂性,还包括数据保护和安全性。
  5. 数据封装的重点在于封装内部的数据,而数据隐藏则涉及对访问和使用条款的限制。