In addition to the properties of the super class, the
Expression object provides a value which
is the object returned when this expression is evaluated.
The return value is typically not provided by the caller and
is instead computed by dynamically finding the method and invoking
it when the first call to getValue is made.