|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public class Expression extends Statement
Expression объект представляет примитивное выражение, в котором единственный метод применяется к цели и ряду параметров, чтобы возвратить результат - как в "a.getFoo()". В дополнение к свойствам class высшего качества, Expression объект обеспечивает значение, которое является объектом, возвращенным, когда это выражение оценивается. Возвращаемое значение обычно не обеспечивается вызывающей стороной и вместо этого вычисляется, динамически находя метод и вызывая это когда первый звонок getValue делается.
getValue(), setValue(java.lang.Object)| Конструктор и Описание |
|---|
Expression(Object value, Object target, String methodName, Object[] arguments)
Создает новое
Expression объект с указанным значением для указанного целевого объекта вызвать метод, определенный именем и массивом параметров. |
Expression(Object target, String methodName, Object[] arguments)
Создает новое
Expression объект для указанного целевого объекта вызвать метод, определенный именем и массивом параметров. |
| Модификатор и Тип | Метод и Описание |
|---|---|
void |
execute()
execute метод находит метод, имя которого является тем же самым как methodName свойство, и вызывает метод на цель. |
Объект |
getValue()
Если свойство значения этого экземпляра уже не устанавливается, этот метод динамически находит метод с указанным methodName на этой цели с этими параметрами и вызывает это.
|
void |
setValue(Object value)
Устанавливает значение этого выражения к
value. |
Строка |
toString()
Печатает значение этого выражения, используя синтаксис стиля Java.
|
getArguments, getMethodName, getTarget@ConstructorProperties(value={"target","methodName","arguments"}) public Expression(Object target, String methodName, Object[] arguments)
Expression объект для указанного целевого объекта вызвать метод, определенный именем и массивом параметров. target и methodName значения не должны быть null. Иначе попытка выполнить это Expression приведет к a NullPointerException. Если arguments значение null, пустой массив используется в качестве значения arguments свойство.
target - целевой объект этого выраженияmethodName - имя метода, чтобы вызвать на указанную цельarguments - массив параметров, чтобы вызвать указанный методgetValue()public Expression(Object value, Object target, String methodName, Object[] arguments)
Expression объект с указанным значением для указанного целевого объекта вызвать метод, определенный именем и массивом параметров. value значение используется в качестве значения value свойство, таким образом, getValue() метод возвратит это, не выполняя это Expression. target и methodName значения не должны быть null. Иначе попытка выполнить это Expression приведет к a NullPointerException. Если arguments значение null, пустой массив используется в качестве значения arguments свойство.
value - значение этого выраженияtarget - целевой объект этого выраженияmethodName - имя метода, чтобы вызвать на указанную цельarguments - массив параметров, чтобы вызвать указанный методsetValue(java.lang.Object)public void execute()
throws Exception
execute метод находит метод, имя которого является тем же самым как methodName свойство, и вызывает метод на цель. Когда class цели определяет много методов с помощью имени, реализация должна выбрать самый определенный метод, используя алгоритм, определенный в Спецификации языка (15.11) Java. Динамический class цели и параметров используется вместо информации о типе времени компиляции и, как Method class непосредственно, преобразование между примитивными значениями и их связанными классами обертки обрабатываются внутренне. Следующие типы метода обрабатываются как особые случаи:
Expressions, а не Statements, поскольку они возвращают значение. List интерфейс может также быть применен, чтобы выстроить экземпляры, отображаясь на статические методы того же самого имени в Array class. Если вызванный метод обычно завершается, значение, которое он возвращает, копируется в value свойство. Отметьте что value свойство устанавливается в null, если тип возврата базового метода void.
execute в class StatementNullPointerException - если значение target или methodName свойство nullNoSuchMethodException - если соответствующий метод не находитсяSecurityException - если менеджер безопасности существует, и он отрицает вызов методаException - это бросается вызванным методомMethodpublic Object getValue() throws Exception
getValue. Если свойство значения было уже установлено, любой звонком setValue или предыдущий звонок getValue тогда свойство значения возвращается или без поиска или без вызова метода. Свойство значения Expression устанавливается в уникальное частное (не -null) оцените по умолчанию, и это значение используется в качестве внутренней индикации, что метод еще не вызвали. Возвращаемое значение null замены это значение по умолчанию таким же образом, что любое другое значение было бы, гарантируя, что выражения никогда не оцениваются не раз.
См. excecute метод для деталей о том, как методы выбираются, используя динамические типы цели и параметров.
ExceptionStatement.execute(), setValue(java.lang.Object)public void setValue(Object value)
value. Это значение будет возвращено getValue методом, не вызывая метод, связанный с этим выражением.value - Значение этого выражения.getValue()
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92