JavaTM 2 Platform
Standard Ed. 6

軟體套件 javax.script

文稿 API 由定義 Java TM Scripting Engines 的介面和類別組成,並為它們在 Java 應用程序中的使用提供框架。

請參見:
          描述

介面摘要
Bindings 所有鍵均為 String 的鍵/值對映射關係。
Compilable 由 ScriptEngines 實作的可選介面,該 ScriptEngines 的方法將文稿編譯成無需重新編譯就能反覆執行的某種形式。
Invocable 由 ScriptEngines 實作的可選介面,該 ScriptEngines 的方法允許在以前執行過的文稿中調用程序。
ScriptContext 該介面的實作類別被用來連接 Script Engines 和宿主應用程序中的物件(如有範圍的 Bindings)。
ScriptEngine ScriptEngine 是基礎介面,該介面的方法在此規範的每個實作中都必須具有完整的功能。
ScriptEngineFactory ScriptEngineFactory 用來描述和實例化 ScriptEngine
 

類別摘要
AbstractScriptEngine 為幾個 eval 方法的變體提供標準實作。
CompiledScript 存儲編譯結果的類別擴展自此類別。
ScriptEngineManager ScriptEngineManagerScriptEngine 類別實作一個發現和實例化機制,還維護一個鍵/值對集合來存儲所有 Manager 創建的引擎所共享的狀態。
SimpleBindings 一個受 HashMap 或其他某些指定 Map 支持的 Bindings 的簡單實作。
SimpleScriptContext ScriptContext 的簡單實作。
 

異常摘要
ScriptException 文稿 API 的一般 Exception 類別。
 

軟體套件 javax.script 的描述

文稿 API 由定義 Java TM Scripting Engines 的介面和類別組成,並為它們在 Java 應用程序中的使用提供框架。此 API 供那些希望在其 Java 應用程序中執行用文稿語言編寫的程序的應用程序程式人員使用。文稿語言程序通常由應用程序的終端使用者提供。

javax.script 套件的主要功能有:

  1. 文稿執行:文稿是用作文稿引擎所執行程序的源的字元串流。文稿執行使用 ScriptEngineeval 方法和 Invocable 介面的方法。

  2. 綁定:此功能允許將 Java 物件作為指定變數公開給文稿程序。BindingsScriptContext 類別用於此目的。

  3. 編譯:此功能允許反覆存儲和執行文稿引擎前端所產生的中間程式碼。這有利於多次執行相同文稿的應用程序。引擎的前端只需要對每個文稿執行一次,而不是每次文稿執行都執行一次,因此這些應用程序可以獲得高效率。注意,此功能是可選的,文稿引擎可以選擇不實作它。調用者需要使用 instanceof 來檢查 Compilable 介面的可用性。

  4. 調用:此功能允許重用文稿引擎前端所產生的中間程式碼。編譯功能允許重執行中間程式碼所表示的整個文稿,而調用功能允許重執行文稿中的個別程序/方法。因為對於編譯而言,並非所有的文稿引擎都需要提供此功能。調用者必須檢查 Invocable 的可用性。

  5. 文稿引擎發現和元資料:為文稿 API 編寫的應用程序可能對文稿引擎有特定的要求。一些可能需要特定的文稿語言和/或版本,而另一些可能需要特定的實作引擎和/或版本。文稿引擎是以指定方式打套件的,從而可以在運行時被發現,並可以查詢屬性。Engine 發現機制基於 Jar 檔案規範中描述的 Service 發現機制。文稿引擎實作類別打包在 jar 檔案中,這些檔案包含一個名為 META-INF/services/javax.script.ScriptEngineFactory 的文本資源。此資源必須為打包在 jar 檔案中的每個 ScriptEngineFactory 套件含一個行。ScriptEngineManager 套件括 getEngineFactories 方法,該方法用於獲取所有使用此機制發現的 ScriptEngineFactory 實例。ScriptEngineFactory 擁有用於查詢關於文稿引擎的屬性的方法。

從以下版本開始:
1.6

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only