Functional Programming in Java, Second Edition: p.34 "Refactoring to Narrow the Scope"

We read:

In the preceding (smelly) example we used a static method, but we don’t want to pollute the class with static methods to cache each variable in the future. It would be nice to narrow the function’s scope to where it’s needed. We can do that using a Function interface.

This doesn’t fully make sense to me. How about:

In the preceding (smelly) example we used a static method to generate a closure, essentially a factory method for closures that check for a certain starting letter. Still, we don’t want to pollute the class with static methods [to cache each variable in the future?]. It would be nice to narrow the scope of the closure generation to where it is needed. We can do that using a Function interface, basically writing a lambda to generate a closure.