数据抽象和封装的区别

目录:

Anonim

数据抽象和封装的主要区别在于 数据抽象隐藏了实现细节,只向用户展示了功能,以降低代码复杂度,而封装将数据和方法绑定或包装到一个单元中,隐藏细节以保护数据。

面向对象编程 (OOP) 有助于将现实世界的场景建模为软件。它是一种使用类和对象设计程序的范式或方法论。类是创建对象的蓝图。换句话说,它是一种创建对象的结构。它由属性和方法组成。属性描述属性或数据,而方法描述操作或行为。没有类是不可能创建对象的。因此,对象是类的实例。数据抽象和封装是 OOP 中的两个概念。

数据抽象、封装、OOP

什么是数据抽象

数据抽象是指隐藏内部细节,只显示功能。换句话说,它隐藏了实现细节,只是向外界展示了功能。一个现实世界的例子是电视。用户无需了解内部电子电路和功能即可观看电视。另一个例子是使用手机。用户不需要知道内部处理。他只需要知道主要功能,例如拨打电话、发送消息或浏览互联网。

数据抽象在软件开发中具有优势。最重要的是,它降低了代码复杂性。此外,它隐藏了细节并暴露了基本特征。 OOP 支持语言使用抽象类和接口帮助实现数据抽象。

什么是封装

封装将数据和方法组合成一个单元。封装的主要目的是保护数据。它类似于医疗胶囊。药物在胶囊内,它被覆盖并受到保护,不受外界影响。

图 01:封装

实现封装的方法是使用“private”和“public”等访问修饰符。它们改变了数据或方法的可见性。私有成员只能在类内访问,而公共成员可以在类内和其他类中访问。

通过将数据成员或属性设为私有并通过 getter 和 setter 等公共方法访问它们,可以在 OOP 语言中实现封装。同样,封装将数据和方法压缩到一个单元。此外,它还为数据提供保护。

数据抽象和封装的区别

定义

数据抽象是一个 OOP 概念,它隐藏了实现细节,只向用户展示了功能。封装是一个 OOP 概念,它将数据和方法绑定或包装到一个单元中。

主要用途

数据抽象隐藏实现细节以降低代码复杂度,而封装隐藏数据以保护数据。这是数据抽象和封装在两者用法方面的主要区别。

实现方法

OOP 语言使用抽象类和接口来实现数据抽象。相比之下,OOP 语言可以通过将数据成员设为私有并通过公共方法访问它们来实现封装。

结论

数据抽象和封装是OOP(Object Oriented Programming)中的两个概念。数据抽象和封装的区别在于,数据抽象隐藏了实现细节以降低代码复杂度,而封装隐藏了数据保护细节。

参考:

1.教程点。 “Java 封装。” Www.tutorialspoint.com,Tutorials Point,2018 年 3 月 24 日,可在此处获取。2.“Java 中的抽象”。 GeeksforGeeks,2017 年 11 月 14 日,可在此处获得。3.“Java 封装”。 Javatpoint,可在此处获得。

数据抽象和封装的区别