欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
BeanShell快速入門(mén)---Java應用程序腳本引擎 | 中華學(xué)習網(wǎng)--IT科技頻道

快速入門(mén)

歡迎使用BeanShell.這是一個(gè)速成課程。我們將省去一些重要的選項和細節。要學(xué)習更多的內容請看本User‘s Guide的其它部分。

下載和運行BeanShell

請到http://www.beanshell.org下載最新的JAR文件。你可以用圖形桌面模式和命令行模式起動(dòng)BeanShell。
如果你只是要玩一玩BeanShell,你可以在BeanShell的jar文件上雙擊來(lái)起動(dòng)BeanShell的桌面。但不管怎樣,如果你要讓BeanShell與你的類(lèi)與應用程序一起工作就必須將BeanShell的jar文件加到classpath中。
你可以將BeanShell的jar文件拖到JAVA_HOME的ext目錄也可以直接加到classpath中。

  • windows用戶(hù)請將bsh.jar放在JAVA_HOME/jre/lib/ext文件夾,OSX用戶(hù)可以放在/Library/Java/Extensions.
    或者增加BeanShell到你的classpath目錄,如:
    unix: export CLASSPATH=$CLASSPATH:bsh-xx.jar
    windows:set classpath %classpath%;bsh-xx.jar

然后你就可以運行BeanShell在GUI或命令行模式:

  •  java bsh.Console       // run the graphical desktop
    or
         java bsh.Interpreter   // run as text-only on the command line
    or
         java bsh.Interpreter filename [ args ] // run script file

可以在你的應用程序內部來(lái)運行,也可以作為debug及servlet的遠程服務(wù)器模式,或一個(gè)Applet內部來(lái)運行BeanShell。請參考"BeanShell Modes of Operation"獲得更多詳情。

BeanShell GUI

用GUI模式啟動(dòng)BeanShell后,將打開(kāi)一個(gè)桌面視窗。用鼠標右擊在桌面的背景上,你可以打開(kāi)另一個(gè)控制臺視窗及其它的工具如一個(gè)簡(jiǎn)單的類(lèi)游覽器。
每一個(gè)控制臺視窗運行一個(gè)獨立的BeanShell解釋器。這個(gè)圖形化的控制臺支持基本的歷史命令,行編輯,剪切和粘貼,甚至類(lèi)和變量名的自動(dòng)完成功能。從控制臺你能開(kāi)啟一個(gè)簡(jiǎn)單的編輯視窗。在它里面,你可以編寫(xiě)腳本和使用‘eval’選項求表達式的值。

Java語(yǔ)句和表達式

BeanShell能理解標準的JAVA語(yǔ)句,表達式,和方法宣告。語(yǔ)句和表達式的內容可以是:變量,宣告,賦值,方法調用,循環(huán),條件等。
在Java程序中你必須嚴格的使用它們,但在BeanShell中,你可以用“寬松類(lèi)型”(loosely typed)的方式來(lái)使用它們。也就是說(shuō),你可以在寫(xiě)腳本時(shí)偷懶,不進(jìn)行變量類(lèi)型的宣告(在原始數據類(lèi)型和對象都可以)。如果你試著(zhù)用錯變量類(lèi)型,BeanShell將會(huì )給出一個(gè)錯誤。
這里有一些例子:
foo = "Foo";   
four = (2 + 2)*2/2;
print( foo + " = " + four );  // print() is a BeanShell command
// Do a loop
for (i=0; i<5; i++)
    print(i);  
// Pop up a frame with a button in it
button = new JButton( "My Button" );
frame = new JFrame( "My Frame" );
frame.getContentPane().add( button, "Center" );
frame.pack();
frame.setVisible(true);

    有用的BeanShell命令

    在剛才那個(gè)例子中我們用了一個(gè)內建在BeanShell中的一個(gè)方便的命令print(),來(lái)顯示變量的值。print()跟ava的System.out.println()非常的相像,除非它能保證輸出總是命令行。print()也可以顯示一些對象的類(lèi)型(如數組),但比Java的更詳細。另一個(gè)相關(guān)的命令是show(),用來(lái)開(kāi)啟與關(guān)閉顯示你輸入的每一行的結果。
    這兒是一些其它的BeanShell的命令:
    source(), run() - 將一個(gè)bsh腳本讀到解釋器或運行在另一個(gè)解釋器。
    frame() - 顯示一個(gè)Frame或JFrame的GUI組件.
    load(), save() - 載入和保存一個(gè)序列化的對象到一個(gè)文件.
    cd(), cat(), dir(), pwd(), etc. - 類(lèi)unix的shell命令。
    exec() - 運行一個(gè)本地的程序。
    javap() - 打印一個(gè)對象的方法和字段,類(lèi)似于Java的javap命令。
    setAccessibility() - 開(kāi)啟無(wú)限制的存取private 和protected的組件。
    要獲得更多的信息請查看BeanShell命令的詳細清單。

    提示:
    BeanShell命令并不是真的"內建"其中的,而是作為腳本方法自動(dòng)從classpath載入的. 你可以擴展基本命令集并加到classpath中作為自訂義的腳本來(lái)使用。

    腳本方法

    你可以在bsh中宣告和使用方法,就像在java的類(lèi)中一樣。

    • int addTwoNumbers( int a, int b ) {
          return a + b;
      }
      sum = addTwoNumbers( 5, 7 );  // 12

    bsh的方法可以有動(dòng)態(tài)的(寬松的)參數和返回類(lèi)型。

    • add( a, b ) {
          return a + b;
      }
      foo = add(1, 2);            // 3
      foo = add("Oh", " baby");   // "Oh baby"

    實(shí)現Interface

    注意:如果要BeanShell能實(shí)現任意的Interface,必須有jdk1.3及以上支持。
    你可以在腳本中用標準的Java內部類(lèi)的語(yǔ)法來(lái)實(shí)現Interface.例如:

    • ActionListener scriptedListener = new ActionListener() {
      &nbsp;   actionPerformed( event ) { ... }
      }

        你可以不用實(shí)現Interface的所有方法,而只用實(shí)現你需要的方法。如果代碼中調用了未被實(shí)現的方法,將丟出異常。如果你想重載大量的方法的行為--例如為日志生成一個(gè)"啞"適配器--你可以在腳本對象中實(shí)現一個(gè)特殊的方法:invoke(name,args)。invoke()方法用來(lái)處理任何未被定義的方法的調用:

        • ml = new MouseListener() {
              mousePressed( event ) { ... }
              // handle the rest
              invoke( name, args ) { print("Method: "+name+" invoked!");
          }

        腳本對象

        在BeanShell中,和在JavaScript與Perl中一樣,腳本對象是用封閉的方法體一構成的。通過(guò)在方法未尾返回一個(gè)特殊值"this",你就可以像使用方法一樣調用這個(gè)對象了。在這個(gè)方法調用時(shí),你可以給與它任何的值。通常對象內部需要包括方法,所以BeanShell的腳本方法在一定程度上可再包含一些方法以構成腳本對象。例如:

        • foo() {
              print("foo");
              x=5;
              bar() {
                  print("bar");
              }
              return this;
          }
          myfoo = foo();    // prints "foo"
          print( myfoo.x ); // prints "5"
          myfoo.bar();      // prints "bar"

        如果這些代碼對你來(lái)說(shuō)很陌生,別急,請用戶(hù)手冊可得到更透徹的解釋。

        在你的腳本中,BeanShell腳本對象(也就是先前例子中的"this"參照)能自動(dòng)實(shí)現任何JAVA介面類(lèi)型。當JAVA代碼調用相應與之通訊的腳本方法內的方法。當你試著(zhù)將腳本對象作為參數傳給Java方法時(shí),BeanShell會(huì )自動(dòng)將它造型(cast)為相應的類(lèi)型。如要傳遞BeanShell外部的對象時(shí),你可以在需要時(shí)顯式的進(jìn)行造型(cast).請看用戶(hù)手冊中的詳細內容。

        從你的應用程序調用BeanShell

        通過(guò)建立一個(gè)BeanShell解釋器,使用eval()或source()命令,你可以在你的應用程序中求文本表達式的值和運行腳本。如果你希望在你的腳本內部使用一個(gè)對象,可以用set()方法傳遞對象的變量參照給BeanShell,并通過(guò)get()方法取得結果。

        • import bsh.Interpreter;
          Interpreter i = new Interpreter();  // Construct an interpreter
          i.set("foo", 5);                    // Set variables
          i.set("date", new Date() );
          Date date = (Date)i.get("date");    // retrieve a variable
          // Eval a statement and get the result
          i.eval("bar = foo*10");            
          System.out.println( i.get("bar") );
          // Source an external script file
          i.source("somefile.bsh");
      本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
      打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
      猜你喜歡
      類(lèi)似文章
      為Java應用程序加入腳本引擎
      自動(dòng)化測試-從關(guān)鍵字視圖到自然語(yǔ)言視圖
      Jmeter之Bean shell使用(全)
      四種Java腳本語(yǔ)言之評測4eacbad93b069f6c>>Java教程頻道
      JMeter 擴展開(kāi)發(fā):BeanShell 數據模擬實(shí)現及性能探討
      jmeter學(xué)習指南之深入分析跨域傳遞cookie
      更多類(lèi)似文章 >>
      生活服務(wù)
      分享 收藏 導長(cháng)圖 關(guān)注 下載文章
      綁定賬號成功
      后續可登錄賬號暢享VIP特權!
      如果VIP功能使用有故障,
      可點(diǎn)擊這里聯(lián)系客服!

      聯(lián)系客服

      欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久