2016-09-20 46 views
0

我想了解java中的数据抽象和程序抽象之间的区别。java中的数据抽象和程序抽象之间的区别

我明白过程抽象是利用接受形式参数并隐藏用户实现的方法。这在PL/SQL语言中完全有意义,因为我可以选择在PL/SQL中分别创建过程。

但是我在数据抽象和程序抽象之间感到困惑,因为即使是java中的过程也是作为某些类的一部分实现的。每个类也可以有一些静态方法(公共静态),包中的每一个类都可以使用。

请能有人给明确区分这两个(在Java方面)

回答

1

在程序抽象中,方法用于捕获程序模式,对行为进行抽象。 例如,在Java中,你可以写这样的:

public void printFibonacci(int n){ 
//your code to print Fibonacci numbers 
} 

通过这种方式,用户可以方便的使用过程,甚至无需知道这是怎么回事里面的功能。你知道它会打印给定输入的斐波那契。

另一方面,在数据抽象中,类用于抽象相关的有状态值及其相关行为 - 也称为抽象数据类型(ADT)。
例如,在Java中,它包括:

  1. 接口类
  2. 的允许行为
-1

在面向对象编程,抽象是主要pillars.In的Java之一,当涉及到数据抽象,它意味着当设计/定义类本身,您只需确定那些与Domain.eg相关的Class的属性如果Person是一个实体,它可以具有诸如姓,名,薪水,配偶,年龄,身高,体重,血型等许多属性。但是如果您正在开发医疗保健领域的应用程序,那么您只想选择那些属性与医疗保健相关,如身高,血型和忽略其余部分。但另一方面,如果您正在开发社交调查应用程序,则不需要这些属性。通过这种方式,识别所需属性并忽略其余部分是数据抽象。 对于程序抽象,必要的部分是“程序做了什么,并且忽略了它如何做”。大多数语言默认支持它。在Java中,一个类可以在不知道实现细节的情况下调用其他类的方法。这是程序抽象的一个例子。

相关问题