gpt4 book ai didi

java - 这个 "method prototype"实际上在这个 Java 源代码中是什么?

转载 作者:行者123 更新时间:2023-11-29 05:02:36 25 4
gpt4 key购买 nike

我想查看 Apache Commons Math 库中 RealMatrix 类的 getRowVector 方法的源代码。我在这里找到它:grepcode .

但是由于某种原因,似乎没有一个显示的方法有任何实现;它们看起来都像函数原型(prototype):

RealVector getRowVector(int row) throws MatrixIndexException;

经过搜索,我发现 Java 没有原型(prototype)。上面代码的目的是什么?某处有实际的实现吗?

这很奇怪,因为类似的 RealVector 类的完整实现如我所料;只是 RealMatrix 是这样的。

最佳答案

RealMatrix 是一个接口(interface)。一个interface定义一个由实现负责实现的契约,但本身不提供任何实现代码(尽管从 Java8 开始它可以有默认方法和静态方法)。您可以使用接口(interface)来限制客户端需要了解其正在使用的对象的程度。最基本的例子是java.util.List,它提供了访问和修改列表的常用方法,并且有多种实现,一些在JDK集合库中提供(一种用于数组支持的列表,一种用于链表实现) ,还有一些在库和框架中实现(例如,Hibernate 有自己的 List 实现,促进了持久实体中的延迟加载)。

apidoc page列出了实现类:AbstractRealMatrix、Array2DRowRealMatrix、BlockRealMatrix、DiagonalMatrix、OpenMapRealMatrix。

关于java - 这个 "method prototype"实际上在这个 Java 源代码中是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31569145/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com