天天看點

BeanShell特殊變量和值

除了作用與修飾符:“this”、“super”、“global”之外,BeanShell 支援大量系統預定義的變量,“不可思議的”值和方法。

<b>特殊的值</b>

$_ —— 最後一個表達式評估的值。這種奇怪的構造沿用自 Perl 語言,但是這種想法存在于許多腳本語言中。在互動地工作中友善你取得最後的結果。

$_e —— 抛出最後一個未捕捉的異常對象。這友善你在互動的使用中取回最後一個異常來檢查它的細節。

bsh —— BeanShell 系統的根對象,包含系統資訊和變量。

bsh.args —— 對 BeanShell interpreter 作為指令行參數傳遞的字元串數組。

bsh.shared —— 對所有 interpreter 執行個體進行共享的一個特殊的靜态空間。通常每個 bsh.Interpreter 執行個體全局上是獨立的;有自己的唯一的全局的命名空間和設定。bsh.shared 在 bsh.Interpreter 類中作為一個靜态地命名空間被實作出來。它的增加主要為 GUI 桌面執行個體中的通信提供支援。

bsh.console —— 如果 BeanShell 在它自己的 GUI 桌面模式中運作,隻要它有變量,那麼這個變量就持有一個對目前 interpreter 的控制台的引用。

bsh.appletcontext —— 如果 BeanShell 在一個 Applet 中運作,存在的話,指的是目前 applet 的上下文。

bsh.cwd —— 一個代表 BeanShell interpreter 目前工作目錄的 String 字元串。它被 cd()、dir()、pwd()、pathToFile()指令使用或控制。

bsh.show —— show() 指令使用的一個 boolean 值。它表明了在互動使用中結果是否被列印。

bsh.interactive —— 一個表明是否這個 interpreter 運作在一個互動的模式中的 boolean 值。

bsh.evalOnly —— 一個表明這個 interpreter 是否擁有輸入流或者它是否隻作為 eval() 操作(比如:嵌入式使用)的一個引擎服務。

注意:

使用“bsh”作為系統根對象名稱的選擇多少有點不太适宜,因為它和目前 BeanShell(以及 bsh) 的包名沖突。這意味着如果

你想顯示地從 BeanShell 腳本(例如:bsh.Interpreter)中使用 BeanShell 類,你必須先導入他們。比如:

import bsh.Interpreter;

i=new Interpreter();

<b>運作效果</b>

<b>$_</b>

使用的例子

<a target="_blank"></a>

<b>$_e</b>

<b>bsh</b>

本文轉自 tongqiuyan  51CTO部落格,原文連結:http://blog.51cto.com/tongqiuyan/766837

繼續閱讀