posts - 188,comments - 176,trackbacks - 0
               摘要: 第一部分 類(lèi)和類(lèi)的裝載

          我們來(lái)看一下類(lèi)以及它們被JVM裝載的時(shí)候做了些什么?
            閱讀全文
          posted @ 2007-05-24 11:02 cheng 閱讀(202) | 評(píng)論 (0)編輯 收藏
               摘要: 大多數(shù)好的設(shè)計(jì)者象躲避瘟疫一樣來(lái)避免使用實(shí)現(xiàn)繼承(extends 關(guān)系)。實(shí)際上80%的代碼應(yīng)該完全用interfaces寫(xiě),而不是通過(guò)extends。“JAVA設(shè)計(jì)模式”一書(shū)詳細(xì)闡述了怎樣用接口繼承代替實(shí)現(xiàn)繼承。這篇文章描述設(shè)計(jì)者為什么會(huì)這么作。   閱讀全文
          posted @ 2007-05-24 11:01 cheng 閱讀(214) | 評(píng)論 (0)編輯 收藏
               摘要: 如果您認(rèn)為 Java 游戲開(kāi)發(fā)人員是 Java 編程世界的一級(jí)方程式賽車(chē)手,那么您就會(huì)明白為什么他們會(huì)如此地重視程序的性能。 游戲開(kāi)發(fā)人員幾乎每天都要面對(duì)的性能問(wèn)題,往往超過(guò)了一般程序員考慮問(wèn)題的范圍。哪里可以找到這些特殊的開(kāi)發(fā)人員呢?Java 游戲社區(qū)就是一個(gè)好去處。 雖然在這個(gè)站點(diǎn)可能沒(méi)有很多關(guān)于服務(wù)器端的應(yīng)用,但是我們依然可以從中受益,看看這些“惜比特如金”的游戲開(kāi)發(fā)人員每天所面對(duì)的,我們往往能從中得到寶貴的經(jīng)驗(yàn)。讓我們開(kāi)始游戲吧!
            閱讀全文
          posted @ 2007-05-24 11:00 cheng 閱讀(257) | 評(píng)論 (0)編輯 收藏
               摘要: 首先,推薦對(duì)Java有一定理解的同仁一本書(shū)《Practical Java》。在《Practical Java》中也有一個(gè)章節(jié)介紹Java中關(guān)于傳值和傳引用的問(wèn)題,堪稱(chēng)經(jīng)典。

          《Practical Java》  閱讀全文
          posted @ 2007-05-24 10:59 cheng 閱讀(1306) | 評(píng)論 (0)編輯 收藏
               摘要: 通過(guò)使用一些輔助性工具來(lái)找到程序中的瓶頸,然后就可以對(duì)瓶頸部分的代碼進(jìn)行優(yōu)化。一般有兩種方案:即優(yōu)化代碼或更改設(shè)計(jì)方法。我們一般會(huì)選擇后者,因?yàn)椴蝗フ{(diào)用以下代碼要比調(diào)用一些優(yōu)化的代碼更能提高程序的性能。而一個(gè)設(shè)計(jì)良好的程序能夠精簡(jiǎn)代碼,從而提高性能。   閱讀全文
          posted @ 2007-05-24 10:59 cheng 閱讀(226) | 評(píng)論 (0)編輯 收藏
               摘要: Java性能優(yōu)化技巧集錦

            可供程序利用的資源是有限的,優(yōu)化的目的就是讓程序用盡可能少的資源完成預(yù)定的任務(wù)。

            可供程序利用的資源(內(nèi)存、CPU時(shí)間、網(wǎng)絡(luò)帶寬等)是有限的,優(yōu)化的目的就是讓程序用盡可能少的資源完成預(yù)定的任務(wù)。優(yōu)化通常包含兩方面的內(nèi)容:減小代碼的體積,提高代碼的運(yùn)行效率。本文討論的主要是如何提高代碼的效率。
            閱讀全文
          posted @ 2007-05-24 10:58 cheng 閱讀(204) | 評(píng)論 (0)編輯 收藏
               摘要: 類(lèi)加載是java語(yǔ)言提供的最強(qiáng)大的機(jī)制之一。盡管類(lèi)加載并不是討論的熱點(diǎn)話(huà)題,但所有的編程人員都應(yīng)該了解其工作機(jī)制,明白如何做才能讓其滿(mǎn)足我們的需要。這能有效節(jié)省我們的編碼時(shí)間,從不斷調(diào)試ClassNotFoundException, ClassCastException的工作中解脫出來(lái)。  閱讀全文
          posted @ 2007-05-24 10:57 cheng 閱讀(277) | 評(píng)論 (0)編輯 收藏
               摘要: 定制類(lèi)加載器
            

          要較好地控制類(lèi)的加載,就要實(shí)現(xiàn)定制的類(lèi)加載器。所有自定義的類(lèi)加載器都應(yīng)繼承自java.lang.ClassLoader。而且在構(gòu)造方法中,我們也應(yīng)該設(shè)置父類(lèi)加載器。然后重寫(xiě)findClass()方法。differentversionspush文件夾包含了一個(gè)叫做FileSystemClassLoader的自訂制的類(lèi)加載器。其結(jié)構(gòu)如圖9所示。
            閱讀全文
          posted @ 2007-05-24 10:56 cheng 閱讀(370) | 評(píng)論 (0)編輯 收藏
               摘要: 1. 棧(stack)與堆(heap)都是Java用來(lái)在Ram中存放數(shù)據(jù)的地方。與C++不同,Java自動(dòng)管理?xiàng):投眩绦騿T不能直接地設(shè)置棧或堆。

            2. 棧的優(yōu)勢(shì)是,存取速度比堆要快,僅次于直接位于CPU中的寄存器。但缺點(diǎn)是,存在棧中的數(shù)據(jù)大小與生存期必須是確定的,缺乏靈活性。另外,棧數(shù)據(jù)可以共享,詳見(jiàn)第3點(diǎn)。堆的優(yōu)勢(shì)是可以動(dòng)態(tài)地分配內(nèi)存大小,生存期也不必事先告訴編譯器,Java的垃圾收集器會(huì)自動(dòng)收走這些不再使用的數(shù)據(jù)。但缺點(diǎn)是,由于要在運(yùn)行時(shí)動(dòng)態(tài)分配內(nèi)存,存取速度較慢。  閱讀全文
          posted @ 2007-05-24 10:55 cheng 閱讀(267) | 評(píng)論 (0)編輯 收藏
               摘要: 對(duì)于這個(gè)系列里的問(wèn)題,每個(gè)學(xué)Java的人都應(yīng)該搞懂。當(dāng)然,如果只是學(xué)Java玩玩就無(wú)所謂了。如果你認(rèn)為自己已經(jīng)超越初學(xué)者了,卻不很懂這些問(wèn)題,請(qǐng)將你自己重歸初學(xué)者行列。內(nèi)容均來(lái)自于CSDN的經(jīng)典老貼。


          問(wèn)題一:我聲明了什么!
            閱讀全文
          posted @ 2007-05-24 10:54 cheng 閱讀(212) | 評(píng)論 (0)編輯 收藏
               摘要: 下面的論述針對(duì)32位系統(tǒng),對(duì)64位系統(tǒng)不適用,后敘。

          經(jīng)常你寫(xiě)了一個(gè)程序,一測(cè)試,功能沒(méi)問(wèn)題,一看內(nèi)存占用也不多,就不去考慮其它的東西了。但可能程序使用了一個(gè)什么數(shù)據(jù)結(jié)構(gòu),會(huì)當(dāng)數(shù)據(jù)規(guī)模變大時(shí),內(nèi)存占用激增。
            閱讀全文
          posted @ 2007-05-24 10:53 cheng 閱讀(343) | 評(píng)論 (0)編輯 收藏
               摘要: 1. java中堆與棧

          在Java程序運(yùn)行時(shí),有6個(gè)地方可以用于保存數(shù)據(jù):
          (1) 寄存器。最快的保存區(qū)域,位于處理器內(nèi)部,數(shù)量十分有限,它是根據(jù)需要由編譯器分配。我們對(duì)此沒(méi)有直接的控制權(quán).
            閱讀全文
          posted @ 2007-05-24 10:51 cheng 閱讀(354) | 評(píng)論 (0)編輯 收藏
               摘要: 一、什么是Java虛擬機(jī)


          當(dāng)你談到Java虛擬機(jī)時(shí),你可能是指:
          1、抽象的Java虛擬機(jī)規(guī)范
          2、一個(gè)具體的Java虛擬機(jī)實(shí)現(xiàn)
          3、一個(gè)運(yùn)行的Java虛擬機(jī)實(shí)例
            閱讀全文
          posted @ 2007-05-24 10:49 cheng 閱讀(331) | 評(píng)論 (0)編輯 收藏
               摘要: 一、引言

          Java虛擬機(jī)(JVM)的類(lèi)裝載就是指將包含在類(lèi)文件中的字節(jié)碼裝載到JVM中, 并使其成為JVM一部分的過(guò)程。JVM的類(lèi)動(dòng)態(tài)裝載技術(shù)能夠在運(yùn)行時(shí)刻動(dòng)態(tài)地加載或者替換系統(tǒng)的某些功能模塊, 而不影響系統(tǒng)其他功能模塊的正常運(yùn)行。本文將分析JVM中的類(lèi)裝載系統(tǒng),探討JVM中類(lèi)裝載的原理、實(shí)現(xiàn)以及應(yīng)用。
            閱讀全文
          posted @ 2007-05-24 10:48 cheng 閱讀(267) | 評(píng)論 (0)編輯 收藏
               摘要: JVM(Java虛擬機(jī))一種用于計(jì)算設(shè)備的規(guī)范,可用不同的方式(軟件或硬件)加以實(shí)現(xiàn)。編譯虛擬機(jī)的指令集與編譯微處理器的指令集非常類(lèi)似。Java虛擬機(jī)包括一套字節(jié)碼指令集、一組寄存器、一個(gè)棧、一個(gè)垃圾回收堆和一個(gè)存儲(chǔ)方法域。   閱讀全文
          posted @ 2007-05-24 10:44 cheng 閱讀(515) | 評(píng)論 (0)編輯 收藏
               摘要: Java的白皮書(shū)為我們提出了Java語(yǔ)言的11個(gè)關(guān)鍵特性

            (1)Easy:Java的語(yǔ)法比C++的相對(duì)簡(jiǎn)單,另一個(gè)方面就是Java能使軟件在很小的機(jī)器上運(yùn)行,基礎(chǔ)解釋其和類(lèi)庫(kù)的支持的大小約為40kb,增加基本的標(biāo)準(zhǔn)庫(kù)和線(xiàn)程支持的內(nèi)存需要增加125kb  閱讀全文
          posted @ 2007-05-24 10:41 cheng 閱讀(363) | 評(píng)論 (0)編輯 收藏
          僅列出標(biāo)題
          共9頁(yè): 上一頁(yè) 1 2 3 4 5 6 7 8 9 
          主站蜘蛛池模板: 炉霍县| 兴宁市| 西平县| 桃江县| 万全县| 富蕴县| 两当县| 嘉祥县| 麻江县| 长治县| 丹巴县| 涟水县| 罗甸县| 西昌市| 武清区| 新安县| 丹巴县| 绵竹市| 潜江市| 新竹县| 武义县| 瑞金市| 濉溪县| 绥芬河市| 荣成市| 卓资县| 栾城县| 确山县| 万全县| 剑阁县| 隆尧县| 宜章县| 南和县| 信丰县| 阿拉尔市| 康定县| 大姚县| 饶阳县| 南丰县| 周口市| 晋宁县|