Spec-Zone.ru › OpenJDK 8

Класс 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)

Создаёт новый объект Statement для указанного целевого объекта, чтобы вызвать метод, заданный именем и массивом аргументов.

Методы

Модификатор и тип Метод и описание
void execute()

Метод execute находит метод с именем, совпадающим со свойством methodName, и вызывает этот метод для целевого объекта.

Object[] getArguments()

Возвращает аргументы вызываемого метода.

String getMethodName()

Возвращает имя вызываемого метода.

Object getTarget()

Возвращает целевой объект этого утверждения.

String toString()

Выводит значение этого утверждения с использованием синтаксиса Java.

Наследуемые методы из класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Конструкторы

Statement

@ConstructorProperties(value={"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.

Переопределяет:
toString в классе Object
Возвращает:
строковое представление объекта.

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API