【问题标题】:Can Eclipse auto-generate an interface of a 3rd party library class?Eclipse 可以自动生成第 3 方库类的接口吗?
【发布时间】:2011-06-15 12:39:52
【问题描述】:

我正在使用 Apache 公共网络库中的 Apache FTPClient 类。遗憾的是,它没有为大多数功能实现接口,这使得使用它的测试类变得棘手。所以,我想我会创建自己的类来包装这个类并实现一个接口。无论如何,这就是背景。我的问题是,是否可以在 Eclipse 中生成一个接口(类似于 Refactor->Extract Interface),但对于位于 jar 文件中的第 3 方代码?

澄清一下,我现在不是在寻找 FTPClient 来实现新接口,而是创建一个模仿与 FTPClient 相同的公共 API 的接口。然后我可以创建自己的类来实现这个接口并包装 FTPClient。

【问题讨论】:

  • 你也可以尝试一个可以直接处理类的模拟框架,比如从版本 3 开始的 EasyMock。

标签: java eclipse interface extract


【解决方案1】:

嗯。为什么不从一个空类开始,比如

class MyWrapper {

    private Referent client;
}

然后,我会执行“Source -> Generate Delegate Methods”,根据需要使用对底层原始对象的委托调用来填充空类。从该类中,您现在可以“重构 -> 提取接口”...因为无论如何您都需要包装器进行生产,这将同时解决两个问题(包装器生成 + 接口生成)。

【讨论】:

  • Eclipse 太棒了!感谢您的提示。
猜你喜欢
  • 2015-07-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-19
  • 1970-01-01
  • 2021-03-05
  • 1970-01-01
相关资源
最近更新 更多