我正在为 Java 开发人员制作一个库。我想创建一个实现 AutoCloseable 接口的类,以防开发人员使用 Java 7。但我还需要为面向 Android(不支持 AutoCloseable)的开发人员提供一个没有 AutoCloseable 接口的类版本。
在这两种情况下,我的班级名称必须相同。
一种解决方案是预处理器,但我的目标是开发人员,不能指望他们采用任何非标准的预处理器。
那么,根据 Java 版本支持同一类的两个版本的最佳实践是什么?
谢谢!
-- 更新澄清:
两个版本的完整源代码的唯一区别是“实现 AutoCloseable”这两个词:
public class Transaction { ...
或
public class Transaction implements AutoCloseable {...