java - BDB LongBinding 与 ByteArrayBinding 静态方法

标签 java static-methods berkeley-db

LongBinding类中,方法entryToLong(DatabaseEntry entry)longToEntry(long val, DatabaseEntry entry)都是静态的。

但是在ByteArrayBinding类中,entryToObject(DatabaseEntry entry)objectToEntry(byte[] object, DatabaseEntry entry)都不是静态的.

这些方法的实现看起来非常相似。例如,检查源代码后,可以看到 longToEntryobjectToEntry 方法都委托(delegate)给了 entry.setData,其中 entry 是类型为 DatabaseEntry 的方法参数。

为什么这两个 LongBinding 方法是静态的,而类似的 ByteArrayBinding 方法不是?

在我的 pom.xml 中,我有以下依赖项:

<dependency>
  <groupId>com.sleepycat</groupId>
  <artifactId>je</artifactId>
  <version>4.1.21</version>
</dependency>

最佳答案

没有真正的解释。

ByteArrayBinding 中的方法可以(并且应该?)是static,因为它们没有引用类的实例。

这两个类可能是由不同的开发人员编写的,它们实现的功能也略有不同。

关于java - BDB LongBinding 与 ByteArrayBinding 静态方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22606709/

相关文章:

c++ - 使用静态成员函数而不是等效的非静态成员函数的优点?

java - 带有导入库的 Android Studio java.lang.NoSuchMethodError

Windows 网络共享上的 svn 存储库

berkeley-db - 如何打开本地比特币数据库

java - onManagerConnected 状态返回值 2 [市场错误]

java - ftl 模板中的当前日期

java - 代表CFG制作

java - Spring Aop 依赖关系

java - 从java中的main方法调用另一个方法

xcode - 从main.mm调用C++库会导致编译错误-验证声明是否与宏冲突