广元煌褂旅行社

當前位置:

Java專業(yè)語言輔導:動態(tài)調用動態(tài)語言之Java腳本API(2)

發(fā)表時間:2015/8/28 11:39:38 來源:互聯(lián)網(wǎng) 點擊關注微信:關注中大網(wǎng)校微信
關注公眾號

Java 腳本 API

腳本與動態(tài)的對比

術語腳本 通常表示在解釋器 shell 中運行的語言,它們往往沒有單獨的編譯步驟。術語動態(tài) 通常表示等到運行時判斷變量類型或對象行為的語言,往往具有閉包和連續(xù)特性。一些通用的編程語言同時具有這兩種特性。此處首選腳本語言 是因為本文的著重點是 Java 腳本 API,而不是因為提及的語言缺少動態(tài)特性。

2006 年 10 月,Java 語言添加了腳本包,從而提供了一種統(tǒng)一的方式將腳本語言集成到 Java 應用程序中去。對于語言開發(fā)人員,他們可以使用這個包編寫粘連代碼(glue code),從而使人們能夠在 Java 應用程序中調用他們的語言。對于 Java 開發(fā)人員,腳本包提供了一組類和接口,允許使用一個公共 API 調用多種語言編寫的腳本。因此,腳本包類似于不同語言(比如說不同的數(shù)據(jù)庫)中的 Java Database Connectivity (JDBC) 包,可以使用一致的接口集成到 Java 平臺中去。

以前,在 Java 代碼中,動態(tài)調用腳本語言涉及到使用各種語言發(fā)行版所提供的獨特類或使用 Apache 的 Jakarta Bean Scripting Framework (BSF)。BSF 在一個 API 內部統(tǒng)一了一組腳本語言(請參閱 參考資料)。使用 Java SE 6 腳本 API,二十余種腳本語言(AppleScript、Groovy、JavaScript、Jelly、PHP、Python、Ruby 和 Velocity)都可以集成到 Java 代碼中,這在很大程序上依賴的是 BSF。

腳本 API 在 Java 應用程序和外部腳本之間提供了雙向可見性。Java 代碼不僅可以調用外部腳本,而且還允許那些腳本訪問選定的 Java 對象。比如說,外部 Ruby 腳本可以對 Java 對象調用方法,并訪問對象的屬性,從而使腳本能夠將行為添加到運行中的應用程序中(如果在開發(fā)時無法預計應用程序的行為)。

調用外部腳本可用于運行時應用程序增強、配置、監(jiān)控或一些其他的運行時操作,比如說在不停止應用程序的情況下修改業(yè)務規(guī)則。腳本包可能的作用包括:

·在比 Java 語言更簡單的語言中編寫業(yè)務規(guī)則,而不用借助成熟的規(guī)則引擎。

·創(chuàng)建插件架構,使用戶能夠動態(tài)地定制應用程序。

·將已有腳本集成到 Java 應用程序中,比如說處理或轉換文件文章的腳本。

·使用成熟的編程語言(而不是屬性文件)從外部配置應用程序的運行時行為。

·在 Java 應用程序中添加一門特定于域的語言(domain-specific language)。

·在開發(fā) Java 應用程序原型的過程中使用腳本語言。

·在腳本語言中編寫應用程序測試代碼。

編輯推薦

JAVA認證考試報考指南 / 更多JAVA考試資料

(責任編輯:zyc)

2頁,當前第1頁  第一頁  前一頁  下一頁
最近更新 考試動態(tài) 更多>
远安县| 清镇市| 抚州市| 滨州市| 新昌县| 沙湾县| 湾仔区| 余江县| 松溪县| 肇源县| 高淳县| 嘉善县| 黄石市| 汝州市| 集安市| 安新县| 北京市| 东宁县| 隆林| 巢湖市| 叙永县| 鹤壁市| 高安市| 唐河县| 徐水县| 东源县| 鄂托克前旗| 株洲市| 家居| 鹰潭市| 铁岭市| 萍乡市| 正镶白旗| 阳泉市| 怀柔区| 珠海市| 宜阳县| 贵南县| 建瓯市| 凤凰县| 沈丘县|