fkjava

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            49 Posts :: 0 Stories :: 0 Comments :: 0 Trackbacks

          Java運行環境交互

          SunJava提供了豐富的基礎類庫,Java SE提供了三千多個基礎類(包括第7章介紹的集合框架),通過這些基礎類庫可以提高開發效率,降低開發難度。對于合格的Java程序員而言,至少要熟悉Java SE70%以上的類(當然,筆者并不是讓讀者去背誦Java API文檔),但在反復查閱API文檔的過程中,大腦會自動記住大部分類的功能、方法,因此程序員一定要多練,多敲代碼。

              Java提供了StringStringBufferStringBuilder來處理字符串,它們之間存在少許差別,本章會詳細介紹它們之間的差別,以及如何選擇合適的字符串類。Java還提供了DateCalendar來處理日期、時間,其中Date是一個已經過時的API,通常推薦使用Calendar來處理日期、時間。

              正則表達式是一個強大的文本處理工具,通過正則表達式可以對文本內容查找、替換、分割等操作。從JDK1.4以后,Java也增加了對正則表達式的支持,包括新增的PatternMatcher兩個類,并改寫了String類,讓String類增加了正則表達式支持,增加了正則表達式功能后的String類更加強大。

              Java還提供了非常簡單的國際化支持,Java使用Locale對象封裝一個國家、語言環境,再使用ResourceBundle根據Locale加載語言資源包,當ResourceBundle加載了指定Locale對應的語言資源文件后,ResourceBundle對象就可調用getString方法來取出指定key所對應的消息字符串。

          與用戶互動

              如果一個程序總是按既定的流程運行,無須處理用戶動作,這個程序總是比較簡單的。實際上,絕大部分程序都需要處理用戶動作,包括接受用戶的鍵盤輸入、鼠標動作等。因為現在還未涉及圖形用戶接口(GUI)編程,故本節主要介紹程序如何獲得用戶的鍵盤輸入。

          運行Java程序的參數

          回憶Java程序的入口:main方法的方法簽名:

          //Java程序入口:main方法

          public static void main(String[] args){….}

              現在可以詳細講解main方法為什么采用這個方法簽名:

              1public修飾符:Java類由JVM調用,為了讓JVM可以自由調用這個main方法,所以使用public修飾符把這個方法暴露出來。

              2static修飾符:JVM調用這個主方法時,不可能先創建該主類的對象,然后通過對象來調用該主方法。JVM直接通過主類來調用主方法,因此使用static修飾該主方法。

              3void返回值:因為主方法被JVM調用,該方法的返回值將返回給 JVM,這沒有任何意義,因此main方法沒有返回值。

              上面方法中還包括一個字符串數組形參,根據前面介紹方法調用的規則:誰調用方法,誰負責為形參賦值。也就是說,main方法由JVM調用,即args形參應該由JVM負責賦值。但JVM怎么知道如何為args數組賦值呢?我們先看下面程序:

          程序清單:codes/09/9- 1/TestArgs.java

          public class TestArgs

          {

          public static void main(String[] args)

          {

          //輸出args數組的長度

          System.out.println(args.length);

          //遍歷args數組的每個元素

          for(String arg:args)

          {

          System.out.pringln(arg);

          }}}   

          上面程序幾乎是最簡單的“HelloWorld”程序,只是這個程序增加了輸出args數組的長度,遍歷args數組元素的代碼。使用java TestArgs命令運行上面程序,看到程序僅僅輸出一個0,這表明args數組是一個長度為0的空數組—這是合理的:因為計算機是沒有思考能力的,它只能忠實地執行用戶交給它的任務,既然我們沒有給args數組設定參數值,那么JVM就不知道args數組的元素,所以JVM以將args數組設置成一個長度為。的數組。

          改為如下命令來運行上面程序:

          java TestArgs Java Spring

          看到如圖9.1所示的運行結果:


          9.1main方法的形參數組賦值

          從圖9.1中可以看出,如果運行Java程序時在類名后緊跟一個或多個字符串(多個字符串之間以空格隔開)JVM就會把這些字符串依次賦給args數組元素。運行Java程序時的參數與args數組之間的對應關系如圖9.2所示:


          9.2運行Java程序時參數和args數組的關系

          如果某參數本身包含了空格,則應該將該參數用雙引號(“)括起來,否則JVM會把這個空格當成參數分隔符,而不是當成參數本身。例如采用如下命令來運行上面程序:

           java TestArgs “Java Spring”

          運行上面命令,看到args數組的長度是1,只有一個數組元素,其值是Java Spring

          摘自《瘋狂java講義》

          posted on 2012-05-08 15:55 瘋狂軟件 閱讀(235) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 房产| 双鸭山市| 勐海县| 宣城市| 蓬莱市| 潼关县| 彭阳县| 朝阳县| 突泉县| 临安市| 五常市| 云梦县| 中方县| 宁化县| 霞浦县| 天峻县| 泸西县| 牟定县| 建平县| 安塞县| 淳安县| 天峨县| 泗水县| 温泉县| 合川市| 承德县| 峨眉山市| 闻喜县| 祁东县| 宁陕县| 长春市| 永康市| 峨眉山市| 凯里市| 贵南县| 沙湾县| 共和县| 阳东县| 炉霍县| 桑植县| 滨海县|