Класс AbstractScriptEngine
- java.lang.Object
-
- javax.script.AbstractScriptEngine
- Все реализуемые интерфейсы:
ScriptEngine
- Непосредственные известные подклассы:
NashornScriptEngine
public abstract class AbstractScriptEngine extends Object implements ScriptEngine
Предоставляет стандартную реализацию для нескольких вариантов метода eval.
eval(Reader)
eval(String)
eval(String, Bindings)
eval(Reader, Bindings)
реализуются с помощью абстрактных методов
eval(Reader,ScriptContext) или eval(String, ScriptContext)
с SimpleScriptContext.
SimpleScriptContext используется в качестве стандартного ScriptContext для AbstractScriptEngine.
- С тех пор:
- 1.6
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected ScriptContext |
context |
Стандартный |
Поля, объявленные в интерфейсе javax.script.ScriptEngine
ARGV, ENGINE, ENGINE_VERSION, FILENAME, LANGUAGE, LANGUAGE_VERSION, NAME
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
AbstractScriptEngine() |
Создает новый экземпляр AbstractScriptEngine, используя |
AbstractScriptEngine(Bindings n) |
Создает новый экземпляр, используя указанный |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Object |
eval(Reader reader) |
Вызывает абстрактный метод |
Object |
eval(Reader reader,
Bindings bindings) |
Вызывает абстрактный метод |
Object |
eval(String script) |
Аналогично |
Object |
eval(String script,
Bindings bindings) |
Аналогично |
Object |
get(String key) |
Получает значение для указанного ключа в |
Bindings |
getBindings(int scope) |
Возвращает |
ScriptContext |
getContext() |
Возвращает значение защищенного поля |
protected ScriptContext |
getScriptContext(Bindings nn) |
Возвращает |
void |
put(String key,
Object value) |
Устанавливает указанное значение с указанным ключом в |
void |
setBindings(Bindings bindings,
int scope) |
Устанавливает |
void |
setContext(ScriptContext ctxt) |
Устанавливает значение защищенного поля |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе javax.script.ScriptEngine
createBindings, eval, eval, getFactory
Поля
context
protected ScriptContext context
Значение по умолчанию для этого поля.
Конструкторы
AbstractScriptEngine
public AbstractScriptEngine()
Создает новый экземпляр AbstractScriptEngine, используя SimpleScriptContext в качестве значения по умолчанию для ScriptContext.
AbstractScriptEngine
public AbstractScriptEngine(Bindings n)
Создает новый экземпляр, используя указанное Bindings в качестве значения ENGINE_SCOPE Bindings в защищенном поле context.
- Параметры:
-
n- УказанноеBindings. - Исключения:
-
NullPointerException- если n равно null.
Методы
setContext
public void setContext(ScriptContext ctxt)
Устанавливает значение защищенного поля context в указанное ScriptContext.
- Определено в:
-
setContextв интерфейсеScriptEngine - Параметры:
-
ctxt- УказанноеScriptContext. - Исключения:
-
NullPointerException- если ctxt равно null.
getContext
public ScriptContext getContext()
Возвращает значение защищенного поля context.
- Определено в:
-
getContextв интерфейсеScriptEngine - Возвращает:
- Значение защищенного поля
context.
getBindings
public Bindings getBindings(int scope)
Возвращает Bindings с указанным значением области видимости в защищенном поле context.
- Определено в:
-
getBindingsв интерфейсеScriptEngine - Параметры:
-
scope- Указанная область видимости - Возвращает:
- Соответствующее
Bindings. - Исключения:
-
IllegalArgumentException- если значение области видимости не соответствует типу защищенного поляcontext.
setBindings
public void setBindings(Bindings bindings,
int scope) Устанавливает Bindings с соответствующим значением области видимости в поле context.
- Определено в:
-
setBindingsв интерфейсеScriptEngine - Параметры:
-
bindings- УказанноеBindings. -
scope- Указанная область видимости. - Исключения:
-
IllegalArgumentException- если значение области видимости не соответствует типу поляcontext. -
NullPointerException- если bindings равно null, а область видимостиScriptContext.ENGINE_SCOPE
put
public void put(String key,
Object value) Устанавливает указанное значение с указанным ключом в ENGINE_SCOPE Bindings защищенного поля context.
- Определено в:
-
putв интерфейсеScriptEngine - Параметры:
-
key- Указанный ключ. -
value- Указанное значение. - Исключения:
-
NullPointerException- если ключ равен null. -
IllegalArgumentException- если ключ пустой.
get
public Object get(String key)
Получает значение для указанного ключа в ENGINE_SCOPE защищенного поля context.
- Определено в:
-
getв интерфейсеScriptEngine - Параметры:
-
key- Ключ, значение которого нужно вернуть - Возвращает:
- Значение для указанного ключа.
- Исключения:
-
NullPointerException- если ключ равен null. -
IllegalArgumentException- если ключ пустой.
eval
public Object eval(Reader reader,
Bindings bindings)
throws ScriptException eval(Reader, Bindings) вызывает абстрактный метод eval(Reader, ScriptContext), передавая ему ScriptContext, чьи Reader, Writer и Bindings для областей видимости, отличных от ENGINE_SCOPE, идентичны соответствующим членам защищенного поля context . Указанное Bindings используется вместо ENGINE_SCOPE Bindings поля context.
- Определено в:
-
evalв интерфейсеScriptEngine - Параметры:
-
reader-Readerсодержащий исходный код скрипта. -
bindings-Bindingsдля использования в качествеENGINE_SCOPEво время выполнения скрипта. - Возвращает:
- Возвращаемое значение из
eval(Reader, ScriptContext) - Исключения:
-
ScriptException- если произошла ошибка в скрипте. -
NullPointerException- если любой из параметров равен null.
eval
public Object eval(String script,
Bindings bindings)
throws ScriptException То же, что и eval(Reader, Bindings) за исключением того, что используется абстрактный метод eval(String, ScriptContext).
- Определено в:
-
evalв интерфейсеScriptEngine - Параметры:
-
script-Stringсодержащий исходный код скрипта. -
bindings-Bindingsдля использования в качествеENGINE_SCOPEво время выполнения скрипта. - Возвращает:
- Возвращаемое значение из
eval(String, ScriptContext) - Исключения:
-
ScriptException- если произошла ошибка в скрипте. -
NullPointerException- если любой из параметров равен null.
eval
public Object eval(Reader reader)
throws ScriptException eval(Reader) вызывает абстрактный метод eval(Reader, ScriptContext), передавая значение поля context.
- Определено в:
-
evalв интерфейсеScriptEngine - Параметры:
-
reader-Readerсодержащий исходный код скрипта. - Возвращает:
- Возвращаемое значение из
eval(Reader, ScriptContext) - Исключения:
-
ScriptException- если произошла ошибка в скрипте. -
NullPointerException- если любой из параметров равен null.
eval
public Object eval(String script)
throws ScriptException То же, что и eval(Reader) за исключением того, что используется абстрактный метод eval(String, ScriptContext).
- Определено в:
-
evalв интерфейсеScriptEngine - Параметры:
-
script-Stringсодержащий исходный код скрипта. - Возвращает:
- Возвращаемое значение из
eval(String, ScriptContext) - Исключения:
-
ScriptException- если произошла ошибка в скрипте. -
NullPointerException- если любой из параметров равен null.
getScriptContext
protected ScriptContext getScriptContext(Bindings nn)
Возвращает SimpleScriptContext. SimpleScriptContext:
- Использует указанное
Bindingsв качествеENGINE_SCOPE - Использует
Bindings, возвращаемое абстрактным методомgetGlobalScope, в качествеGLOBAL_SCOPE - Использует Reader и Writer в значениях по умолчанию для
ScriptContextэтогоScriptEngine
Полученный таким образом
SimpleScriptContext используется для реализации методов eval с использованием абстрактных методов eval(Reader,Bindings) и eval(String,Bindings). - Параметры:
-
nn- Bindings для использования вENGINE_SCOPE - Возвращает:
- Полученный
SimpleScriptContext
© 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.scripting/javax/script/AbstractScriptEngine.html