模块  java.scripting
软件包  javax.script

Class 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
    • 字段详细信息

      • context

        protected ScriptContext context
        默认 ScriptContext如此 AbstractScriptEngine
    • 构造方法详细信息

      • AbstractScriptEngine

        public AbstractScriptEngine()
        使用 SimpleScriptContext作为其默认值 ScriptContext创建AbstractScriptEngine的新实例。
      • AbstractScriptEngine

        public AbstractScriptEngine​(Bindings n)
        在受保护的 context字段中使用指定的 Bindings创建新实例作为 ENGINE_SCOPE Bindings
        参数
        n - 指定的 Bindings
        异常
        NullPointerException - 如果n为null。
    • 方法详细信息

      • getContext

        public ScriptContext getContext()
        返回受保护的 context字段的值。
        Specified by:
        getContext在界面 ScriptEngine
        结果
        受保护的 context字段的值。
      • getBindings

        public Bindings getBindings​(int scope)
        返回 Bindings与受保护的规定范围值 context场。
        Specified by:
        getBindings接口 ScriptEngine
        参数
        scope - 指定的范围
        结果
        对应的 Bindings
        异常
        IllegalArgumentException - 如果范围的值对于受保护的 context字段的类型无效。
      • setBindings

        public void setBindings​(Bindings bindings,
                                int scope)
        设置 Bindings与在相应的范围值 context字段。
        Specified by:
        setBindings在界面 ScriptEngine
        参数
        bindings - 指定的 Bindings
        scope - 指定的范围。
        异常
        IllegalArgumentException - 如果范围的值对于 context字段的类型无效。
        NullPointerException - 如果绑定为null且范围为 ScriptContext.ENGINE_SCOPE
      • eval

        public Object eval​(Reader reader,
                           Bindings bindings)
                    throws ScriptException
        eval(Reader, Bindings)调用抽象eval(Reader, ScriptContext)方法, eval(Reader, ScriptContext)传递ScriptContext其读取器, ScriptContext器和绑定用于其他ENGINE_SCOPE与受保护的context字段的成员相同的范围。 指定Bindings被用来代替ENGINE_SCOPE Bindings所述的context字段。
        Specified by:
        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)
        Specified by:
        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字段的值。
        Specified by:
        eval在界面 ScriptEngine
        参数
        reader - 包含脚本源的 Reader
        结果
        返回值来自 eval(Reader, ScriptContext)
        异常
        ScriptException - 如果脚本中发生错误。
        NullPointerException - 如果任何参数为null。
      • getScriptContext

        protected ScriptContext getScriptContext​(Bindings nn)
        返回SimpleScriptContext SimpleScriptContext

        • 使用指定的Bindings作为其ENGINE_SCOPE
        • 采用Bindings返回由抽象getGlobalScope方法为GLOBAL_SCOPE
        • 使用此ScriptEngine的默认ScriptContext中的Reader and Writer


        此方法返回的SimpleScriptContext用于使用抽象eval(Reader,Bindings)eval(String,Bindings)版本实现eval方法。
        参数
        nn - 用于 ENGINE_SCOPE绑定
        结果
        SimpleScriptContext