我需要实现一个ResultSet
具有数百种方法的接口 ()。现在,我将只实现这些方法的一个子集,NotImplementedError
为其他方法抛出一个。
在 Java 中,我找到了两个解决方案:
- 创建一个
AbstractResultSet
实现的抽象类ResultSet
,声明所有要抛出的方法NotImplementedError
。没有黑客,但有很多样板代码。 - 用于
Proxy.newProxyInstance
在InvocationHandler
. 更少的代码,但也不太直接用于其他编码器。
Kotlin 有第三种选择吗?
在我的情况下,我需要ResultSet
在 IBM 数据集(包含压缩小数、二进制字段、分区数字、可变长度的行等)上实现 aa,以通过SQLServerBulkCopy
. 我不知道ResultSet
这个类调用了哪些方法,所以,现在,我将只实现“最常用”的方法,记录对未实现方法的调用。