java - 接口(interface)作为参数

标签 java interface

我正在浏览这个软件库以获取 java 中的语义规范。

用于实现 DivRank 的特定代码有一个方法,该方法采用名为 SparseMatrix 的参数: http://code.google.com/p/airhead-research/source/browse/branches/matrix-rank/src/edu/ucla/sspace/matrix/DivRank.java?spec=svn1277&r=1277

包中的文档说SparseMatrix是一个接口(interface): http://airhead-research.googlecode.com/svn/trunk/javadoc/1.7/edu/ucla/sspace/matrix/SparseMatrix.html

我的目标是将 double[][] 中的值注入(inject)到此参数中。

SparseMatrix 实现了另一个名为 Matrix 的接口(interface),它具有 setRow 和 setColumn 函数。当我尝试将其与我创建的接口(interface)的对象一起使用时,我得到了 NullPointException。我认为这是因为我还没有 SparseMatrix 接口(interface)的实例。

然后我意识到,我必须使用一个实现该接口(interface)的类并传递该类对象。但文档没有显示任何适合我需要的简单类。

我是否需要定义一个新类来实现此接口(interface)并重写接口(interface)函数并使用该对象来传递我的值?

最佳答案

我没有详细查看,但在 javadoc(您​​的第二个链接)上,有一个名为“所有已知实现类”的列表。您可以检查它们,我相信您会找到一个具体的类(即不是接口(interface)或抽象类)并且可以满足您的需要。例如SparseHashMatrix有一个set(row, col, value)您可以使用该方法通过循环从 double[][] 填充矩阵。

关于java - 接口(interface)作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9707388/

相关文章:

java - 如何使用 eclipse 读取 txt 文件作为我的 system.in

java - 如何在PreferenceActivity中添加Toolbar

java - Java中的隐藏字符StringTokeneizer/split?

java - 概率与编程模拟

.net - Exchange 日历与 Exchange 服务器外部的应用程序服务器集成

java - 创建仅限于自己类的通用接口(interface)

c# - 功能灵活的 super 类型

java - Apache poi - 千位分隔符

java - 对可比较接口(interface)的数组进行排序

interface - 无法打开 Main.Storyboard