java中数据抽象和过程抽象的区别

avg*_*877 4 java abstraction

我试图理解java中数据抽象和过程抽象之间的区别。

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

但我对数据抽象和过程抽象感到困惑,因为即使 Java 中的过程也是作为某个类的一部分实现的。每个类还可以有一些静态方法(public static),包中的每个其他类都可以使用它们。

请有人能明确区分这两者(就java而言)

小智 5

在过程抽象中,方法用于捕获过程模式,对行为进行抽象。例如,在 Java 中,您可以编写如下内容:

public void printFibonacci(int n){
//your code to print Fibonacci numbers
}
Run Code Online (Sandbox Code Playgroud)

这样,用户就可以轻松地使用该程序,甚至不必了解函数内部发生了什么。您知道它将打印给定输入的斐波那契数列。

另一方面,在数据抽象中,类用于抽象相关的状态值及其相关行为——也称为抽象数据类型(ADT)。
例如,在 Java 中,它由以下部分组成:

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