熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> JSP教程 >> 正文

Java技巧:提高J2SE性能的代碼技巧(上)

2013-11-15 09:48:05  來源: JSP教程 

  JAVA開發工具集(JDK)

  ■ 設計了一組通用用途的類

  ■ 設計的質量和實現多樣化

  一 有些部分設計和實現得很好

  一 而有些部分

  ■ 你可以訪問JDK的源代碼

  一 %JAVA_HOME%\srcjar

  一 不要直接修改源代碼但如果識別出一個JDK的方法是一個瓶頸檢查源代碼以理解為什麼

  數據結構和算法

  ■ 推薦JAVA集合框架

  一 指南 javasuncom/docs/books/tutorial/collections

  ■ 設計得很好的基本的數據結構和算法

  

  集合框架

  

  ■ 調換實現達到不同的性能特性

  集合框架接口與具體類

  ■ 面向接口編程而不是具體類

  一 特別是對於方法參數

  一 在性能優化時更容易改變實現

  

  集合框架具體類

  ■ 當一個集合創建時要消除動態增長的代價為其指定一個實際初始大小

  一些具體類(如ArrayList)的動態增長的代價是很高的

  ■ 在適當的地方考慮重用集合對象

  一 調用集合的clear()方法清楚它的所有元素

  ■ ObjecthashCode()

  一 選擇一個算法保證哈希表的統一分配

  一 覆蓋繼承的ObjecthashCode()方法 默認的實現返回的是對象引用值沒有展示一個一致的分配

  一 從不返回一個常量

  一 非常小心地改變鍵的值的底層狀態

  集合框架實現數據結構

  ■ 如果一定要實現自己的數據結構依賴於集合接口實現你的類

  一 可以使用javautilCollections工具方法恰當地實現你的具體數據結構

  ■ 擴大數據結構集合你可以插入其它的開發成果

  集合框架基礎算法

  ■ JavautilCollections類裡的算法

  一 sort(…)

  以升序重新排列List的元素

  輕微地優化MergeSortO(nlog(n))的版本

  一 binarySearch(…)

  在一個已排序的List裡查找指定的元素

  一 極限值

  min(…) max(…)

  一 其它

  reverse(…)fill(…) copy(…)

  數組

  ■ 數組與ArrayList與Vector

  一 數組的速度大約比ArrayList快十倍

  一 數組的速度大約比Vector快

  一 ArrayList的速度大約比Vevtor快

  ■ 當拷貝一個數組的元素到另一個數組時使用Systemarrycopy(…)

  數組:基礎算法

  ■ JAVA的javautilArrays類提供了一組重載方法為基礎數組實現了最佳化的算法(與javautilCollections類相似)

  ■ JavautilArrays類的裡的算法

  一 binarySearch(…)

  一 equals(…)

  一 fill(…)

  一 sort(…)


From:http://tw.wingwit.com/Article/program/Java/JSP/201311/19139.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.