java.lang.Object java.beans.Statement java.beans.Expression
public class Expression
Expression
对象表示基本表达式,其中将单个方法应用于某一目标和一组参数,以返回结果,与在 "a.getFoo()"
中一样。
除了超类的属性之外,Expression
对象还提供了一个值,它是在对这个表达式进行求值时所返回的对象。返回值通常不由调用者提供,而是通过动态查找方法并在第一次调用 getValue
时调用查找到的方法来计算。
getValue()
,
setValue(java.lang.Object)
构造方法摘要 | |
---|---|
Expression(Object value, Object target, String methodName, Object[] arguments) 为某个返回结果的方法创建一个新的 Expression 对象。 |
|
Expression(Object target, String methodName, Object[] arguments) 按照所给参数创建一个新的 Statement 对象,使其具有 target 、methodName 和 arguments 。 |
方法摘要 | |
---|---|
Object |
getValue() 如果此实例的 value 属性尚未设置,则此方法利用这些参数,在此目标上动态查找具有指定 methodName 的方法,并调用该方法。 |
void |
setValue(Object value) 将此表达式的值设置为 value 。 |
String |
toString() 使用 Java 风格的语法打印此表达式的值。 |
从类 java.beans.Statement 继承的方法 |
---|
execute, getArguments, getMethodName, getTarget |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
public Expression(Object target, String methodName, Object[] arguments)
Statement
对象,使其具有
target
、
methodName
和
arguments
。
target
- 此表达式的 target。
methodName
- 此表达式的 methodName。
arguments
- 此表达式的 arguments。如果该参数为
null
,则使用一个空数组。
getValue()
public Expression(Object value, Object target, String methodName, Object[] arguments)
Expression
对象。但是永远都不会计算结果,因为此构造方法通过调用
setValue
方法,使用
value
参数来设置 value 属性。
value
- 此表达式的 value。
target
- 此表达式的 target。
methodName
- 此表达式的 methodName。
arguments
- 此表达式的 arguments。如果该参数为
null
,则使用一个空数组。
setValue(java.lang.Object)
方法详细信息 |
---|
public Object getValue() throws Exception
getValue
的结果返回。如果通过调用
setValue
或因为以前调用
getValue
已经设置 value 属性,则返回该 value 属性,无需查找或调用该方法。
默认情况下,Expression
的 value 属性被设置为唯一私有(非 null
)值,此值被用作指示该方法尚未被调用的内部指示。返回值 null
将替代此默认值,其他任何值也是如此操作,以确保表达式不会被多次求值。
关于如何使用动态类型的 target 和 arguments 选择方法的细节,请参见 excecute
方法。
Exception
Statement.execute()
,
setValue(java.lang.Object)
public void setValue(Object value)
value
。此值将由 getValue 方法返回,无需调用与此表达式相关联的方法。
value
- 此表达式的 value。
getValue()
public String toString()