Класс Statement
- java.lang.Object
-
- java.beans.Statement
- Прямые известные подклассы:
Expression
public class Statement extends Object
Объект Statement представляет собой примитивное утверждение, в котором единственный метод применяется к целевому объекту и набору аргументов — как в "a.setFoo(b)". Обратите внимание, что в этом примере для обозначения целевого объекта и его аргументов используются имена, но объекту утверждения не требуется пространство имён, и он создаётся с самими значениями. Объект утверждения связывает именованный метод со своей средой как простым набором значений: целевым объектом и массивом значений аргументов.
- С:
- 1.4
Конструкторы
| Конструктор | Описание |
|---|---|
Statement(Object target,
String methodName,
Object[] arguments) |
Создаёт новый объект |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
execute() |
Метод |
Object[] |
getArguments() |
Возвращает аргументы для вызова метода. |
String |
getMethodName() |
Возвращает имя вызываемого метода. |
Object |
getTarget() |
Возвращает целевой объект данного утверждения. |
String |
toString() |
Выводит значение данного утверждения с использованием синтаксиса Java. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Конструкторы
Statement
@ConstructorProperties({"target","methodName","arguments"})
public Statement(Object target,
String methodName,
Object[] arguments)
Создаёт новый объект Statement для указанного целевого объекта, чтобы вызвать метод, заданный именем и массивом аргументов.
Значения target и methodName не должны быть null. В противном случае попытка выполнить данное Expression приведёт к NullPointerException. Если значение arguments равно null, в качестве значения свойства arguments используется пустой массив.
- Параметры:
-
target- целевой объект данного утверждения -
methodName- имя вызываемого метода указанного целевого объекта -
arguments- массив аргументов для вызова указанного метода
Методы
getTarget
public Object getTarget()
Возвращает целевой объект данного утверждения. Если этот метод возвращает null, метод execute() выбрасывает исключение NullPointerException.
- Возвращает:
- целевой объект данного утверждения
getMethodName
public String getMethodName()
Возвращает имя вызываемого метода. Если этот метод возвращает null, метод execute() выбрасывает исключение NullPointerException.
- Возвращает:
- имя метода
getArguments
public Object[] getArguments()
Возвращает аргументы для вызова метода. Количество аргументов и их типы должны соответствовать вызываемому методу. null может использоваться как синоним пустого массива.
- Возвращает:
- массив аргументов
execute
public void execute()
throws Exception
Метод execute находит метод, имя которого совпадает со свойством methodName, и вызывает этот метод на целевом объекте. Когда класс целевого объекта определяет множество методов с данным именем, реализация должна выбрать наиболее специфичный метод, используя алгоритм, указанный в спецификации языка Java (15.11). Динамический класс целевого объекта и аргументов используются вместо информации о типе времени компиляции, и, как и сам класс Method, преобразование между примитивными значениями и их соответствующими классами-обёртками обрабатывается внутри.
Следующие типы методов обрабатываются как частные случаи:
- Статические методы могут вызываться, используя объект класса в качестве целевого объекта.
- Зарезервированное имя метода "new" может использоваться для вызова конструктора класса, как если бы все классы определяли статические методы "new". Вызовы конструкторов обычно рассматриваются как
Expression, а не какStatement, так как они возвращают значение. - Имена методов "get" и "set", определённые в интерфейсе
List, также могут применяться к экземплярам массивов, сопоставляя их со статическими методами с тем же именем в классеArray.
- Исключения:
-
NullPointerException- если значение свойстваtargetилиmethodNameравноnull -
NoSuchMethodException- если метод с совпадающим именем не найден -
SecurityException- если существует менеджер безопасности и он запрещает вызов метода -
Exception- что выбрасывается вызываемым методом - См. также:
Method
toString
public String toString()
Выводит значение данного утверждения с использованием синтаксиса Java.
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/beans/Statement.html