我想确保我的对象(Class <? extends Object>
)被妥善处理,因为其他实例可能包含他们使用的数据。例如,秘密数据的DEK / KEK对。
由于覆盖finalize()
通常不受欢迎,如果对象引用设置为null,如何让IDE发出警告并强制开发人员调用dispose()
,或者将自动设置为null(退出方法的示例)?
假设源代码由我直接控制,IDE是Netbeans。
答案 0 :(得分:0)
首先,值得一提的是,在Java 9中不推荐使用终结器来支持Cleaner。可能这将是我将在下面描述的更好的选择。虽然没有尝试过。
说到问题本身:我会尝试这样做:
Closeable
。void execute(Consumer<A> consumer)
。execute
中:实例化A类型的对象,将其传递给使用者(accept
),然后将其关闭。