The
Effective Java section you quoted appears to be page 103-105 in my copy (2nd edition).
It doesn't say anything about process objects that I can see. The function object appears to be an object of a class with no fields; it is passed as a reference to an object only so its methods can be called. Note that Bloch recommends we implement such a class as a Singleton.
You know classes like
java.lang.Math have no fields, and you use them only to get access to their methods? Well, these "strategy objects" are rather similar, only instead of their methods all being static, they have instance methods only. Note they usually implement an interface, which means they have to use instance methods.
I think this is too difficult for "beginning" so I shall move the
thread.