<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-6  評論-1  文章-0  trackbacks-0
      2012年4月14日
         摘要:   閱讀全文
    posted @ 2012-04-14 09:36 gzakoa 閱讀(497) | 評論 (0)編輯 收藏
      2012年3月31日
         摘要:   閱讀全文
    posted @ 2012-03-31 11:01 gzakoa 閱讀(1777) | 評論 (1)編輯 收藏
      2012年3月22日
         摘要:   閱讀全文
    posted @ 2012-03-22 09:15 gzakoa 閱讀(295) | 評論 (0)編輯 收藏
      2012年3月15日
    可供程序利用的資源(內存、CPU時間、網絡帶寬等)是有限的,網站優化的目的就是讓程序用盡可能少的資源完成預定的任務。網站優化通常包含兩方面的內容:減小代碼的體積和提高代碼的運行效率。減小代碼的體積已經寫過太多這類的文章了,下面就簡單討論下如何提高代碼的效率。


        一、不用new關鍵詞創建類的實例用new關鍵詞創建類的實例時,構造函數鏈中的所有構造函數都會被自動調用。但如果一個對象實現了Cloneable接口,我們可以調用它的clone()方法。clone()方法不會調用任何類構造函數。


        在使用設計模式(DesignPattern)的場合,如果用Factory模式創建對象,則改用clone()方法創建新的對象實例非常簡單。


        二、使用非阻塞I/O版本較低的JDK不支持非阻塞I/OAPI。為避免I/O阻塞,一些應用采用了創建大量線程的辦法(在較好的情況下,會使用一個緩沖池)。這種技術可以在許多必須支持并發I/O流的應用中見到,如Web服務器、報價和拍賣應用等。然而,創建Java線程需要相當可觀的開銷。JDK1.4引入了非阻塞的I/O庫(java.nio)。如果應用要求使用版本較早的JDK,需要支持非阻塞I/O的軟件包。


        三、慎用異常異常對性能不利。拋出異常首先要創建一個新的對象。Throwable接口的構造函數調用名為fillInStackTrace()的本地(Native)方法,fillInStackTrace()方法檢查堆棧,收集調用跟蹤信息。只要有異常被拋出,VM就必須調整調用堆棧,因為在處理過程中創建了一個新的對象。異常只能用于錯誤處理,不應該用來控制程序流程。


        四、不要重復初始化變量默認情況下,調用類的構造函數時,Java會把變量初始化成確定的值:所有的對象被設置成null,整數變量(byte、short、int、long)設置成0,float和double變量設置成0.0,邏輯值設置成false。當一個類從另一個類派生時,這一點尤其應該注意,因為用new關鍵詞創建一個對象時,構造函數鏈中的所有構造函數都會被自動調用。


        五、盡量指定類的final修飾符帶有final修飾符的類是不可派生的。在Java核心API中,有許多應用final的例子,例如java.lang.String。為String類指定final防止了人們覆蓋length()方法。另外,如果指定一個類為final,則該類所有的方法都是final。Java編譯器會尋找機會內聯(inline)所有的final方法(這和具體的編譯器實現有關)。此舉能夠使性能平均提高50%。


        六、盡量使用局部變量調用方法時傳遞的參數以及在調用中創建的臨時變量都保存在棧(Stack)中,速度較快。其他變量,如靜態變量、實例變量等,都在堆(Heap)中創建,速度較慢。另外,依賴于具體的編譯器/JVM,局部變量還可能得到進一步優化。請參見《盡可能使用堆棧變量》。


        七、乘法和除法修改后的代碼不再做乘以的操作,而是改用等價的左移的操作,每左移1位相當于乘以2。相應地,右移1位操作相當于除以2。值得一提的是,雖然移位操作速度快,但可能使代碼比較難于理解,所以最好加上一些注釋。

    posted @ 2012-03-15 22:28 gzakoa 閱讀(401) | 評論 (0)編輯 收藏
      2012年2月8日
         摘要:   閱讀全文
    posted @ 2012-02-08 21:32 gzakoa 閱讀(330) | 評論 (0)編輯 收藏
    最近開始學習android開發,運行第一個helloworld程序就遇到下面的錯誤
    Error generating final archive: java.io.FileNotFoundException: E:\workspace\android\xxx\bin\resources.ap_ does not exist

    網上收了一大版,原因是只更新了ADT而沒有對Android SDK tools 和Android SDK Platform-tools進行及時的更新。

    解決方法:
    打開SDK manager,對tools文件夾下的兩個插件進行更新,之后重啟就可以解決問題了。


    參考:http://hi.baidu.com/wuhenaiyanyan/blog/item/3989d41dc5098ee81bd57619.html

    PS:因為我的android SDK是很早之前就安裝的,而ADT是今天才安裝的,所以ADT是最新的,而SDK不是最新的,嘿嘿
    posted @ 2012-02-08 11:25 gzakoa 閱讀(4216) | 評論 (0)編輯 收藏
    僅列出標題  
    主站蜘蛛池模板: 四虎永久在线精品免费观看视频| 免费看黄的成人APP| 中文字幕天天躁日日躁狠狠躁免费| 国产日韩一区二区三免费高清| 在线精品亚洲一区二区三区| 黄色一级毛片免费看| mm1313亚洲国产精品美女| 国产亚洲精品2021自在线| 免费在线观看中文字幕| 久久久久久噜噜精品免费直播| 在线观看亚洲av每日更新| 国产精品美女免费视频观看 | 曰批全过程免费视频网址| 亚洲精品国产成人中文| 成人最新午夜免费视频| 黄页网址大全免费观看12网站| 亚洲国产精品成人| 波多野结衣免费一区视频| 99精品视频在线观看免费专区| 亚洲成a人片在线观看中文app| 免费一本色道久久一区| 国产精品亚洲专区无码不卡| 亚洲中文字幕丝袜制服一区| 亚洲六月丁香六月婷婷蜜芽| 国产精品亚洲专区在线播放| 国产亚洲精品影视在线产品| 精品国产亚洲男女在线线电影| 免费国产黄网站在线看| 亚洲日韩精品无码专区加勒比☆ | 亚洲偷偷自拍高清| 亚洲av日韩片在线观看| 国产美女无遮挡免费网站| 亚洲国产精品无码久久九九| 免费的黄色的网站| 一本大道一卡二大卡三卡免费| 亚洲高清乱码午夜电影网| 亚洲国产aⅴ综合网| 无码人妻丰满熟妇区免费| 亚洲欧美熟妇综合久久久久| 最近中文字幕大全免费版在线| 久久久久亚洲av无码专区喷水 |