<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • 跟蹤Java執行過程的方法

    時間:2024-09-14 16:14:08 JAVA認證 我要投稿
    • 相關推薦

    跟蹤Java執行過程的方法

      Zviki Cohen基于自己探索和理解他人所編寫代碼的體驗,發布了跟蹤Java執行過程的5種方法。他發現簡單的閱讀源代碼(有些情況下是反編譯代碼),可能是十分乏味和有錯誤傾向的過程。

      作為替代,他推薦了5種不同運行時跟蹤方法以在Java代碼運行時觀察它,消除了學習他人代碼的許多不利條件。下面一起來看看吧!

      1、基本方法:斷點和單步執行

      “以最簡單的方法開始:設置斷點并開始跟蹤你的程序執行。它在這些時候是最好的:你需要一個快速且簡單的解決方案,你擁有所有代碼并且知道想在哪里停止執行。你需要在給定斷點設置精細的信息(參數、局部變量等等)。”

      2、初級方法:調試消息

      “我們通過設置調試消息來繼續對程序跟蹤。最簡單的方法是使用System.out.println語句把消息打印到控制臺。 它在這些時候是最好的:你擁有代碼且很清楚你正在尋找什么。對事件處理器來說這是非常好的解決方案。當貫穿某一復雜流程的執行過程時,它的高性能對理解觸發了哪個事件是非常實用的。”

      3、熱門方法:動態代理(Dynamic Proxy)

      “這是在簡單調試消息之上所做的改進。動態代理是一個特定的Java特性,它允許開發者引入proxy類,加進某一給定類之前,并通過某一給定接口截獲所有調用。它在這些時候是最好的:它對事件處理器來說是非常好的解決方案。你可以在很短時間內用一個普通代理設置一個虛擬事件處理器,來查看事件發生順序。當需要理解事件處理器時這是最簡單和快捷的方法。”

      4、暴力方法:運行時剖析器(Run-time Profiler)

      “剖析器是通過特定的JVM hooks在系統中跟蹤所有調用的強大工具。但是用它來跟蹤執行過程是大才小用。它在這些時候是最好的:你想擁有一個特定操作的完整畫卷(如,非常短的執行流程)。”

      5、新時代:Aspects

      “面向方面編程(Aspect Oriented Programming——AOP)是一個非凡的想法。無需深入Aspect概念,這里只考慮其能力:它是截獲你的代碼執行既快速又容易的方法。你可以圍繞方法、構造器、屬性訪問等等有選擇地設置hook,而不需要修改原始代碼。在這些hook中,你可以打印調試消息。它在這些時候是最好的:你想跟蹤可重新構建的代碼執行。”

      延伸閱讀:創建Excel格式的數據

      到目前為止,通過一個Servlet或者jsp生成一個逗號分割值(CSV)文件,然后作為MIME類型text/csv返回給瀏覽器,這還是在Java應用中創建MicrosoftExcel文件的最常用的方法。瀏覽器會調用Excel,并顯示CSV格式的文件。

      現在有了一個為Java開發人員提供能夠真正創建Excel文件的方案。這就是一個稱作POI(“可憐的混亂實現”)的新的Jakarta項目組中最成熟的部分。POI中Excel組件命名為HSSF(“可怕的電子表格格式”)。

      雖然HSSF提供了許多不同的和引擎交互的方式,我們這兒集中于簡單的高層用戶API的討論。

      下面是在一個Excel表格中創建一個矩陣的簡單例子:

      importorg.apache.poi.hssf.usermodel.*;importjava.io.FileOutputStream;//code run against thejakarta-poi-1.5.0-FINAL-20020506.jar.publicclass PoiTest staticpublic void main(String args) throws ExceptionFileOutputStream fos= new FileOutputStream("foo.xls");HSSFWorkbookwb = newHSSFWorkbook();HSSFSheet s =wb.createSheet();wb.setSheetName(0,"Matrix");for(short i=0; i〈50;i++) HSSFRow row =s.createRow(i);for(short j=0; j〈50; j++) HSSFCellcell=row.createCell(j);cell.setCellValue(""+i+","+j);wb.write(fos);fos.close();

      這段代碼首先創建一個Workbook,從該Workbook中得到一個表格、命名,然后繼續寫入一個50x50的矩陣。最后輸出到一個名為foo.xls的Excel文件,甚至在Mac機上也可以打開。

      POI項目是Java應用的令人興奮的一步,為用戶提供了Windows文檔集成的新功能,答應Java開發人員方便地擴展其產品的功能。

    【跟蹤Java執行過程的方法】相關文章:

    Java調用MySQL存儲過程并獲得返回值的方法08-25

    JavaScript函數的執行過程09-20

    在Java中執行JavaScript代碼07-14

    Java怎么編寫Oracle存儲過程09-15

    Java中調用Oracle包的過程06-27

    Java枚舉的常用方法10-05

    Java線程同步的方法10-25

    Java數組定義常用方法09-28

    Java中日期的處理方法09-03

    市政項目跟蹤審計的重點和方法10-11

    主站蜘蛛池模板: 国产精品九九九久久九九| 国产在视频线精品视频二代| 精品国产福利在线观看| 91精品国产高清久久久久久91| 亚洲中文字幕久久精品无码APP| 精品久久久久久久久中文字幕| 久久国产精品偷99| 久久成人国产精品二三区| 亚洲精品高清无码视频| 国产精品极品| 久久er热视频在这里精品| 亚洲自偷自偷精品| 999久久久免费精品国产| 亚洲一日韩欧美中文字幕欧美日韩在线精品一区二 | 久久99国产综合精品免费| 97精品伊人久久久大香线蕉| 综合国产精品第一页| 91无码人妻精品一区二区三区L| 亚洲av永久无码精品漫画| 国产成人精品免费大全| 精品亚洲成AV人在线观看| 精品乱码久久久久久夜夜嗨| 福利姬在线精品观看| 亚洲国产精品无码久久久久久曰 | 亚洲日韩国产AV无码无码精品| 精品久久久久久国产| 精品人妻中文字幕有码在线| 人妻少妇看A偷人无码精品| 日韩精品久久久久久| 精品国产一区二区三区不卡| 免费视频精品一区二区| 四虎在线精品视频一二区| 久久精品国产亚洲av高清漫画| 久久精品国产亚洲av瑜伽| 久久精品国产亚洲沈樵| 国产成人精品日本亚洲网站| 亚洲综合欧美精品一区二区| 国产精品天干天干在线综合| jiucao在线观看精品| 精品人无码一区二区三区| 亚洲综合欧美精品一区二区|