【发布时间】:2016-09-20 14:07:22
【问题描述】:
我的任务是为我们的应用程序将调用的第 3 方 Java 库创建存根。我的问题是如何定义方法“返回类型”的类(如果这是正确的 Java 术语)。我无权访问第 3 方 API 的完整文档,只有方法列表。现在,我的存根只需要返回 true/false 或 1/0,随便什么
以下是一种说明方法的示例。这是我得到的
OobResponse RequestOobRequest(
String ClientName,
String SecurityLink,
short LenofHHU,
RequestMode RequestMode)
我不知道 OobResponse 或 RequestMode 应该是什么,但我应该仍然能够创建存根,对吧?
到目前为止,这就是我所拥有的。
public class stubber {
public class OobResponse {
public int someVar;
}
public class RequestMode {
public int someVar;
}
public OobResponse RequestOobRequest(
String ClientName,
String SecurityLink,
short LenofHHU,
RequestMode RequestMode)
{
OobResponse oobr = new OobResponse();
return oobr;
}
}
【问题讨论】:
-
以后你会用真正的类替换
OobResponse和RequestMode吗?我没有看到创建一个“看起来像”第三方库但实际上并不等同的类的意义。 -
是的,我们目前无法访问第 3 方 API,只能访问其文档,因此我们正努力提前完成工作。将它存根的想法意味着我们可以构建对它的调用,并且(希望)当我们真正掌握它时,我们可以将它插入而不是存根。无论如何,这就是希望!
-
那么,您的基本计划是在不知道实际使用的数据类型的情况下模拟 API?我会节省自己创建无用代码的时间,因为一旦您将假类与真实类交换后,您将不得不使用此 API 编译所有项目,甚至可能需要根据它调整行为。
-
@Smutje 我听到了,但我被要求执行此任务,而且我是 Java 新手,所以您能提供的任何帮助都会很棒。
-
是的,为什么不为您知道的所有类创建 Java 接口,然后再实现这些接口?