相关疑难解决方法(0)

15
推荐指数
1
解决办法
5495
查看次数

如何适应API的变化

我有一个依赖于某个库的大型项目.其中一个库类暴露了以下方法:

public void until(final Predicate<T> isTrue)
public <V> V until(Function<? super T, V> isTrue) {
Run Code Online (Sandbox Code Playgroud)

在哪里PredicateFunction是:

com.google.common.base.Predicate<T>
com.google.common.base.Function<? super T, V>
Run Code Online (Sandbox Code Playgroud)

在该库的最后一个版本中,上述内容已经更改,并通过弃用(删除)public void until(final Predicate<T> isTrue)方法和修改第二个方法进行了重构,如下所示:

public <V> V until(Function<? super T, V> isTrue)
Run Code Online (Sandbox Code Playgroud)

功能现在在哪里java.util.function.Function<? super T, V>.

据我所知,上述更改已完成,以完全支持Java 8功能,特别是lambda表达式.

现在问我的问题.虽然我可以将所有until使用此方法的已弃用版本的调用转换为新结构,但我担心调用此方法的位置太多.有没有办法可以继续使用旧的(已弃用的)方法,也许可以在其他地方重新声明它或某种类型的东西?任何可以解决这个问题的方法都很乐意接受.

java lambda design-patterns java-8

5
推荐指数
1
解决办法
147
查看次数

标签 统计

lambda ×2

.net ×1

c# ×1

design-patterns ×1

java ×1

java-8 ×1

predicate ×1