javax.script

接口
异常
java.lang.Object
  继承者 javax.script.CompiledScript

public abstract class CompiledScript
     
extends Object

存储编译结果的类扩展自此类。状态能够以 Java 类、Java 类文件或脚本语言操作码的形式存储。脚本可以反复执行而无需重新解析。

每个 CompiledScript 都与一个 ScriptEngine 关联,调用 CompiledScripteval 方法将导致 ScriptEngine 执行脚本。执行 CompiledScript 引起的 ScriptEngine 状态的更改在随后引擎执行脚本期间可见。

从以下版本开始:
1.6

构造方法摘要
CompiledScript()
           
 
方法摘要
 Object eval()
          执行存储在 CompiledScript 对象中的程序。
 Object eval(Bindings bindings)
          执行存储在 CompiledScript 对象中的程序,脚本执行期间使用所提供的属性的 Bindings 作为关联 ScriptEngineENGINE_SCOPE
abstract  Object eval(ScriptContext context)
          执行存储在此 CompiledScript 对象中的程序。
abstract  ScriptEngine getEngine()
          返回用 compile 方法创建了此 CompiledScriptScriptEngine
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

CompiledScript

public CompiledScript()
方法详细信息

eval

public abstract Object eval(ScriptContext context)
                     throws ScriptException
执行存储在此 CompiledScript 对象中的程序。

参数:
context - 一个 ScriptContext,它的使用方式与传递给 ScriptEngine eval 方法的 ScriptContext 相同。
返回:
执行脚本所返回的值(如果有)。如果执行脚本没有返回任何值,则应返回 null
抛出:
ScriptException - 如果发生错误。
NullPointerException - 如果 context 为 null。

eval

public Object eval(Bindings bindings)
            throws ScriptException
执行存储在 CompiledScript 对象中的程序,脚本执行期间使用所提供的属性的 Bindings 作为关联 ScriptEngineENGINE_SCOPE。如果 bindings 为 null,则调用此方法的效果等同于调用 eval(getEngine().getContext())。

. 使用与关联 ScriptEngine 的默认 ScriptContext 关联的 GLOBAL_SCOPE BindingsReaderWriter

参数:
bindings - 用于 ENGINE_SCOPE 的属性的 bindings。
返回:
执行脚本所返回的值
抛出:
ScriptException - 如果发生错误。

eval

public Object eval()
            throws ScriptException
执行存储在 CompiledScript 对象中的程序。使用关联 ScriptEngine 的默认 ScriptContext。调用此方法的效果等同于调用 eval(getEngine().getContext())。

返回:
执行脚本所返回的值
抛出:
ScriptException - 如果发生错误。

getEngine

public abstract ScriptEngine getEngine()
返回用 compile 方法创建了此 CompiledScriptScriptEngineCompiledScript 将在此引擎中执行。

返回:
创建了此 CompiledScriptScriptEngine