モジュール java.scripting
パッケージ javax.script

インタフェースInvocable

既知のすべての実装クラス:
NashornScriptEngine

public interface Invocable
以前に実行されたスクリプト内の手続きの呼出しを許可するメソッドを持つScriptEnginesによって実装されるオプションのインタフェースです。
導入されたバージョン:
1.6
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    <T> T getInterface​(Class<T> clasz)
    インタプリタでコンパイルされた関数を使用して、インタフェースの実装を返します。
    <T> T getInterface​(Object thiz, Class<T> clasz)
    インタプリタでコンパイルされたスクリプト・オブジェクトのメンバー関数を使用して、インタフェースの実装を返します。
    Object invokeFunction​(String name, Object... args)
    スクリプト内で定義されたトップ・レベルの手続きと関数を呼び出すために使用されます。
    Object invokeMethod​(Object thiz, String name, Object... args)
    ScriptEngineの状態に保持されている、以前のスクリプトの実行中にコンパイルされたスクリプト・オブジェクト上のメソッドを呼び出します。
  • メソッドの詳細

    • invokeMethod

      Object invokeMethod​(Object thiz, String name, Object... args) throws ScriptException, NoSuchMethodException
      ScriptEngineの状態に保持されている、以前のスクリプトの実行中にコンパイルされたスクリプト・オブジェクト上のメソッドを呼び出します。
      パラメータ:
      name - 呼び出される手続きの名前。
      thiz - 手続きがスクリプト内で定義されたクラスのメンバーであり、thizが以前の実行または呼出しによって返されたクラスのインスタンスである場合は、そのインスタンスを使用して名前付きメソッドが呼び出される。
      args - 手続きに渡される引数。 引数をスクリプト変数に変換する規則は、実装により固有。
      戻り値:
      手続きによって返される値。 スクリプト・メソッドにより返されたスクリプト変数をJavaオブジェクトに変換する規則は、実装により固有。
      例外:
      ScriptException - メソッドの呼出し中にエラーが発生した場合。
      NoSuchMethodException - 指定された名前またはマッチングの引数型を持つメソッドが見つからない場合。
      NullPointerException - メソッド名がnullの場合。
      IllegalArgumentException - 指定されたthizがnullの場合、または指定されたオブジェクトがスクリプト・オブジェクトを表していない場合。
    • invokeFunction

      Object invokeFunction​(String name, Object... args) throws ScriptException, NoSuchMethodException
      スクリプト内で定義されたトップ・レベルの手続きと関数を呼び出すために使用されます。
      パラメータ:
      name - 呼び出す手続きまたは関数の名前
      args - 手続きまたは関数に渡される引数
      戻り値:
      手続きまたは関数によって返される値
      例外:
      ScriptException - メソッドの呼出し中にエラーが発生した場合。
      NoSuchMethodException - 指定された名前またはマッチングの引数型を持つメソッドが見つからない場合。
      NullPointerException - メソッド名がnullの場合。
    • getInterface

      <T> T getInterface​(Class<T> clasz)
      インタプリタでコンパイルされた関数を使用して、インタフェースの実装を返します。 インタフェースのメソッドは、invokeFunctionメソッドを使用して実装することができます。
      型パラメータ:
      T - 返すインタフェースの型
      パラメータ:
      clasz - 返すインタフェースのClassオブジェクト。
      戻り値:
      要求されたインタフェースのインスタンス。要求されたインタフェースが見つからない場合、すなわちScriptEngine内でコンパイル済み関数が、要求されたインタフェース内のどの関数とも一致しない場合はnull。
      例外:
      IllegalArgumentException - 指定されたClassオブジェクトがnullの場合、またはインタフェースではない場合。
    • getInterface

      <T> T getInterface​(Object thiz, Class<T> clasz)
      インタプリタでコンパイルされたスクリプト・オブジェクトのメンバー関数を使用して、インタフェースの実装を返します。 インタフェースのメソッドは、invokeMethodメソッドを使用して実装することができます。
      型パラメータ:
      T - 返すインタフェースの型
      パラメータ:
      thiz - インタフェースのメソッドを実装するために使用されるメンバー関数を持つスクリプト・オブジェクト。
      clasz - 返すインタフェースのClassオブジェクト。
      戻り値:
      要求されたインタフェースのインスタンス。要求されたインタフェースが見つからない場合、すなわちScriptEngine内のコンパイル済みメソッドが、要求されたインタフェース内のどのメソッドとも一致しない場合はnull。
      例外:
      IllegalArgumentException - 指定されたClassオブジェクトがnullの場合、またはインタフェースではない場合、あるいは指定されたオブジェクトがnullの場合、またはスクリプト・オブジェクトを表していない場合。