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

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

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

    Picses' sky

    Picses' sky
    posts - 43, comments - 29, trackbacks - 0, articles - 24

    我的評(píng)論

    共3頁: 上一頁 1 2 3 下一頁 
    re: Android動(dòng)了Java的奶酪? Matthew Chen 2007-12-30 08:53  
    據(jù)說核心api也不是一樣的,jfc本身是一個(gè)一棧式的api庫,底層基于的jni是固有的,android并不是從底層照搬這種類層次結(jié)構(gòu),但Harmony作為遵循java標(biāo)準(zhǔn)的虛擬機(jī)實(shí)現(xiàn)必須提供標(biāo)準(zhǔn)的api實(shí)現(xiàn),所以android從api級(jí)別也不是java程序員可以容易過渡來使用的,基本上說,android只是借鑒了java的語法和一些api接口樣式,本質(zhì)上是完全不同的語言平臺(tái)。
    另外,樓主寫得實(shí)在有點(diǎn)言過其實(shí)了,google的android面向的是手機(jī)平臺(tái),追求的是自由和創(chuàng)新,那它在未來必然也會(huì)因?yàn)閖ava語法上的對(duì)底層不友好而采用和.net同樣的方式——指針,然而基于Harmony的實(shí)現(xiàn)應(yīng)該不支持這樣的做法,到最后,Dalvik必然會(huì)脫出Harmony的束縛,成為徹頭徹尾的另一個(gè).net, android有點(diǎn)掛羊頭賣狗肉,它影響不了java。
    re: JAVA版音樂播放器YOYOPlayer1.0 Matthew Chen 2007-12-17 13:10  
    呵呵,支持。
    有時(shí)候會(huì)頓一下,是解碼器的問題還是gc調(diào)用引起的?
    ruby了解下,d語言也了解下,關(guān)心一下編程未來的走勢(shì)。
    re: JAVA版MP3播放器 Matthew Chen 2007-12-08 08:50  
    2歌詞目錄最好做成可指定的,方便很多
    3標(biāo)簽修改可以兩種做法,一種是你播放歌曲本身就是一個(gè)緩存的文件,而不是真的文件,第二種就是等到下一首歌再把當(dāng)前的標(biāo)簽實(shí)際修改進(jìn)文件,而立即生效的是播放列表的顯示而已。
    re: 怎樣才能成為技術(shù)高手 Matthew Chen 2007-12-08 08:41  
    受教了。
    高效的開發(fā),良好的架構(gòu),KISS的哲學(xué),也是java比其他語言更多關(guān)注的東西,畢竟你不如人家快,但語言本身的優(yōu)雅和靈活使你在這方面能比其他語言更容易提升,最后才是效率考慮和優(yōu)化,當(dāng)然,這有一個(gè)大前提,那就是功能架構(gòu)的時(shí)候你就想清楚了正確的方向,因?yàn)榇蟮姆较蛏鲜钦_的,所以可以不用過早的優(yōu)化。
    最后的這個(gè)方法:
    private static String getBB() {
    return "b";
    }
    如果加上final應(yīng)該會(huì)內(nèi)聯(lián)吧,說不定還是可以的哦。
    re: 私有的成員能被子類繼承嗎? Matthew Chen 2007-12-04 22:17  
    佩服,用debug應(yīng)該很能說明問題拉.
    很有道理,設(shè)計(jì)確實(shí)不是一蹴而就的,只要遵循了好的模式和思想,體系就自然能夠解離和擴(kuò)展。
    re: 我的開發(fā)工具集(1)-CyberArticle Matthew Chen 2007-11-29 11:11  
    確實(shí)很強(qiáng)大,可以方便地做成電子書或?qū)С龀删W(wǎng)頁,不過一直沒找到好的破解,用起來有時(shí)會(huì)在頁面邊角留下未注冊(cè)的文字。
    既然提到了代碼拖拽,那我也提一下代碼復(fù)制和文件復(fù)制,eclipse從3.2之前就實(shí)現(xiàn)了這兩點(diǎn),而netbeans直到6才有文件復(fù)制。
    代碼復(fù)制就是你剪貼板中有一份完整的java源文件的文本(注意是文本,不是文件),點(diǎn)選一個(gè)包c(diǎn)trl v,就可以自動(dòng)生成基于此拷貝文件名的java源文件,文件拷貝類似,也就是說你可以從netbeans中拷一個(gè)java源文件的文本粘貼到eclipse中并生成一個(gè)獨(dú)立的java源文件,卻不能作相反的操作,因?yàn)閚etbeans還不支持,從網(wǎng)上拷代碼下來運(yùn)行的人就知道這個(gè)功能有多劃算了。
    代碼拖拽只是小功能,就如同refactor盡管不是小功能,但讓它在后臺(tái)自己運(yùn)行同樣只是小功能一樣。
    上面還提到j(luò)filedialog,那是基于awt的,和使用swt的filedialog有什么區(qū)別,jfiledialog不能設(shè)置多個(gè)filter,功能比起swt也太過有限,swing優(yōu)勢(shì)在于仿生,所以jfiledialog可以作為項(xiàng)目中的替代方案,但拙劣的很。
    eclipse還有個(gè)功能是大范圍organize import,最大是基于所有包的,netbeans rc1仍未實(shí)現(xiàn),且refactor中的包重命名,尚不支持subpackage,速度也很慢,猜想還在完善中,所以,netbeans要走的路其實(shí)還很遠(yuǎn),是好是壞還是拭目以待吧。
    re: RIA, rarely do I like. Matthew Chen 2007-11-19 08:15  
    ria可以為bs,cs通用,可以說是將來基于mvc實(shí)現(xiàn)的所有項(xiàng)目(不論大?。┑谋憩F(xiàn)層,基于不同程度實(shí)現(xiàn)的view多數(shù)已經(jīng)接近跨平臺(tái)的水平了,再加上炫麗的外觀確實(shí)提高了交互,盡管我也同樣對(duì)目前已知的ria質(zhì)疑,卻不得不說只要瀏覽器還沒有過時(shí),ria就還在壯大,等到瀏覽器過時(shí)了,ria就走得更遠(yuǎn)了。
    android是指手機(jī)操作系統(tǒng)吧,當(dāng)然系統(tǒng)里包括了google的java vm,核心api等,獨(dú)立的實(shí)現(xiàn),所以應(yīng)該把這里的.dex當(dāng)作gphone的專有語言程序了,它不是走跨平臺(tái)的路線,只想自己用把。
    re: Netbeans6.0 RC1正式出來了 Matthew Chen 2007-11-15 11:16  
    確實(shí)發(fā)布了,首頁上都給出圖片鏈接了。試用感覺速度又提高了點(diǎn),贊。
    re: 自定義組件之Button Matthew Chen 2007-11-13 13:49  
    是啊,TreeCellRenderer提供組件只用來實(shí)現(xiàn)節(jié)點(diǎn)本身的繪制,但節(jié)點(diǎn)所占的空間大小卻不知用什么設(shè)置,我試過tree的getPathBounds()方法,好像也不是,哎。
    re: 自定義組件之Button Matthew Chen 2007-11-13 11:32  
    有個(gè)問題請(qǐng)教樓主,如何實(shí)現(xiàn)jtree針對(duì)不同節(jié)點(diǎn)的組件有不同的行高度,我現(xiàn)在被這個(gè)問題困擾了很久,想用拖拽來改變節(jié)點(diǎn)的行高,在DefaultTreeCellRenderer里處理重繪出來,但是在里面用setSize()怎么改都不行,網(wǎng)上沒搜到這樣的例子。
    re: Netbeans6.0 RC1出來了 Matthew Chen 2007-11-12 12:43  
    樓主真勤勞,趕緊去下載了。
    re: 關(guān)于JAVA的PO與VO Matthew Chen 2007-11-11 22:25  
    樓上說的那本書好嗎?講哪方面的東西???
    全局變量有時(shí)也會(huì)用到的,jvm很多借助類的靜態(tài)的東西,那就是全局的了,否則很多實(shí)例引用在對(duì)象間傳遞起來過于復(fù)雜了。
    re: UI的人性設(shè)計(jì) Matthew Chen 2007-11-11 22:17  
    看來大家都去看九宮格了,不錯(cuò)。
    樓主的文章應(yīng)該讓搞界面的人都看看。
    re: C++ 與 Java 語言對(duì)比 Matthew Chen 2007-11-11 22:15  
    finalize和釋放資源有關(guān),但你說和析構(gòu)有關(guān)確實(shí)容易讓人想反駁,因?yàn)閒inalize并不是像析構(gòu)函數(shù)那樣讓人手動(dòng)調(diào)用的,功能和使用方式都沒用相似的地方。
    第5條沒看懂什么意思,還有16說“C++ 中有運(yùn)算符重載 , Java 里只有 + 號(hào)有重載的意思,不過在 JDK5 中也有其他的運(yùn)算符重載,比如兩個(gè)類對(duì)象可以直接相加”,還真沒聽說過有這回事,相加不就是用+,哪來其他的運(yùn)算符。
    泛型加入后可以說是充斥jfc,這是不可撤銷的,所以sun很慎重,泛型真用起來完全讓人摸不著頭腦,我沒用過模板,但c++實(shí)現(xiàn)一定更難于使用,我想表達(dá)的意思是,泛型讓很多人覺得java難了,繁瑣了,這本是選擇java而非c++的理由,靠負(fù)責(zé)好面面俱到并不能讓java更好用。
    re: Europa myeclipse matisse Matthew Chen 2007-11-11 20:48  
    確實(shí)bug很多,beta2也是,升級(jí)了的swing app framework版本基本可以看得出輪廓了。但可視化界面操作是雙刃劍,也可能會(huì)影響開發(fā),我也喜歡swt,最喜歡的是eclipse的rcp,很好的框架,不知netbeans這方面做得好不好,ibm是很了不起的公司,看它提供的控件,提供的milestone的說明,感覺是很專業(yè)很為開發(fā)者負(fù)責(zé)任的在做產(chǎn)品。sun要多學(xué)點(diǎn)啊。
    阿門,我這一輩子啊,還是趕緊轉(zhuǎn)行得了,考公務(wù)員和考研的準(zhǔn)備不能間斷啊。當(dāng)講師需要資歷和條件,一般都是干程序員干出點(diǎn)成績來了才行。
    re: 打造專業(yè)外觀-二 Matthew Chen 2007-11-05 08:31  
    老是想到有個(gè)什么東西可以,原來是Tracker,swt sample里有。還有就是swing實(shí)現(xiàn)透明窗格,最近才知道還有個(gè)jna,看這里:http://m.tkk7.com/ruislan/archive/2007/10/24/154689.html
    只是不知是否可以跨平臺(tái)了,我以前一直覺得只要能有透明窗格,swing也能有Tracker這樣的東西了,現(xiàn)在又不確定了,因?yàn)橥该鱩s上面的一切都變透明了,不知畫出來的線還看不看得到,不然就只有用toolkit里的取capture的方法模擬桌面來實(shí)現(xiàn)。
    還有個(gè)問題,為什么我以前裝ubuntu的時(shí)候java不提供win L&F,在win下也不提供GTK L&F,如果是許可證的問題那我們以后要怎么用它的皮膚啊。
    re: 打造專業(yè)外觀-九宮圖 Matthew Chen 2007-11-03 22:53  
    看樓主的文章,一時(shí)豁然開朗,gui原來可以是這樣的,以前也下載過很多軟件,最近才慢慢開始注意界面布局的特點(diǎn)和提供用戶體驗(yàn)方面的東西,感覺歐美軟件逐漸在界面上追求簡單和易用,ComponentListener的思想有時(shí)比布局管理器容易和適合開發(fā)的需要。
    樓主提到Java已經(jīng)可以在桌面應(yīng)用領(lǐng)域挑戰(zhàn)C/C++,VB,Delphi等等,但是這類工具生成的是編譯型的機(jī)器代碼,具有高的執(zhí)行效率和借助平臺(tái)特有優(yōu)勢(shì),盡管Java跨平臺(tái),又有JIT即時(shí)解釋器在一定程度上提升運(yùn)行速率,但是否語言級(jí)別和平臺(tái)級(jí)別的一些瓶頸會(huì)成為它開發(fā)上的局限性呢,比如,我現(xiàn)在涉及對(duì)數(shù)據(jù)的壓縮解壓和即時(shí)取用,要求高響應(yīng)的速度,我想可能的突破是好的算法實(shí)現(xiàn),而這一層面上對(duì)數(shù)據(jù)結(jié)構(gòu)的要求相對(duì)獨(dú)特——針對(duì)位的操作,而Java的基本數(shù)據(jù)類型中,幾乎是基于字節(jié)的,boolean在底層數(shù)據(jù)實(shí)現(xiàn)上也不例外(希望我沒理解錯(cuò)),這在實(shí)現(xiàn)很多算法上并不理想,不知樓主的意見如何?
    說到swt,我也先學(xué)了點(diǎn)swing再來學(xué)的,如果有說的不對(duì)的請(qǐng)指出,除了無法獲得jdk的標(biāo)準(zhǔn)集成支持外,swt可以說在各個(gè)方面都勝過awt,之所以說awt是因?yàn)槎叩膶?shí)現(xiàn)是相似的對(duì)等體思路,swt在這方面作得很好了,那可以假設(shè)swt和awt在速度上是同一級(jí)別的東西,如果IBM現(xiàn)在搞基于swt基礎(chǔ)之上的純繪制桌面應(yīng)用,就相當(dāng)于在swing的同一級(jí)別之上,這方面IBM沾上邊的象GEF,Draw2D可能有點(diǎn)聯(lián)系吧,它有可能作到類似swing的程度和規(guī)模嗎?就算不行差一點(diǎn),但保持相同的速度級(jí)別我想還是有很大作用的,比較一下:awt是弱的,但基于其之上的swing是繪制一切無所不能的;swt是強(qiáng)的,而在其之上作為補(bǔ)充的純繪制api也能成為其補(bǔ)充,在我看swt的介紹時(shí)看到這一句,對(duì)平臺(tái)缺失的組件用Java繪制,這種繪制指的其實(shí)是用平臺(tái)已有的swt組件進(jìn)行組合獲得復(fù)合控件,我看過eclipse Nebular項(xiàng)目,主要的自定義控件思想也是這樣的,它一方面基于高效的本地控件來復(fù)合,同時(shí)也可能引入本地控件的問題。但是就現(xiàn)階段來說,sun對(duì)swing的支持還未全面鋪開到最關(guān)系用戶切身體驗(yàn)的范圍,舉我上次評(píng)論說過的JFileChooser,速度和awt是秒和毫秒的差距,當(dāng)然,這是可以通過編程手段來忽悠用戶的,比如開個(gè)線程,在打開的第一時(shí)間在后臺(tái)創(chuàng)建備用,就比如jdk demo中的swingset2的方式,但是,這比較讓人難以接受,我只為了提供一個(gè)讓用戶選擇路徑的控件,用完就扔掉的東西,卻不得不忍受全繪制界面帶來的時(shí)間延遲,真的很不值得。
    寫到這里,只感覺腦袋空空,好像成不了文章了,只是還是想和大家分享,希望有人能討論,希望想法沒有浪費(fèi)。
    第一副圖標(biāo)簽頁下有橫線,是viewpart沒設(shè)焦點(diǎn)的原因。
    re: Junit越來越爽了 Matthew Chen 2007-11-02 09:09  
    兩個(gè)功能都是依賴java5來實(shí)現(xiàn)吧。
    re: Java語法總結(jié) - 線程 Matthew Chen 2007-10-31 20:20  
    java的浮點(diǎn)數(shù)據(jù)類型幾乎毫無精度性可言,只能適應(yīng)于近似計(jì)算,這倒不一定和芯片有關(guān)吧,你可以上網(wǎng)看看,看過之后估計(jì)對(duì)浮點(diǎn)數(shù)一點(diǎn)信心都沒有了。
    java線程實(shí)現(xiàn)是基于平臺(tái)特點(diǎn)的沒錯(cuò),但同樣可以保證跨平臺(tái)的線程設(shè)計(jì)準(zhǔn)確可靠地運(yùn)行(前提是你設(shè)計(jì)得對(duì)),畢竟多核模擬出的是和單核相似的不確定性的線程執(zhí)行情況,而確定性的編程設(shè)計(jì)才是基于這個(gè)之上的。
    re: Java語法總結(jié) - 線程 Matthew Chen 2007-10-30 21:48  
    jvm是在底層用os實(shí)現(xiàn)thread的,所以線程問題在java中反而容易呈現(xiàn)因平臺(tái)而異的現(xiàn)象,java能不能充分利用雙核的硬件資源,是看對(duì)應(yīng)的操作系統(tǒng)的實(shí)現(xiàn)的。
    搶占和時(shí)間片,可以同時(shí)作為調(diào)度策略,所謂搶占,也不是優(yōu)先執(zhí)行,根據(jù)實(shí)現(xiàn)不同,可以是時(shí)間片加長,或者輪替幾率加大。
    re: SWT自定義組件之Slider Matthew Chen 2007-10-30 19:39  
    我截了圖
    http://m.tkk7.com/Files/djsl6071/桌面.rar
    第一張是正常情況,第2,3張分別顯示向上、下拖動(dòng)時(shí)出現(xiàn)的缺失。
    你可以用windows自帶的圖片查看器打開,并放大,仔細(xì)看虛擬滑塊的邊緣。
    re: SWT自定義組件之Slider Matthew Chen 2007-10-30 12:47  
    進(jìn)一步觀察發(fā)現(xiàn),lz的代碼運(yùn)行時(shí)虛擬滑塊的邊緣往往缺失,結(jié)合上一條評(píng)論談到的,我想移動(dòng)滑塊時(shí)重

    繪的是移動(dòng)操作的上一次tempLocation指出的舊滑塊的區(qū)域,而我們想要看到的新滑塊的區(qū)域,并沒有全部被納入重畫的范圍,修改的方法:
    redraw(tempLocation, 0, TEMP_H.getBounds().width,TEMP_H.getBounds().height, false);
    tempLocation = valueToPels(getValue()) + movedX - TEMP_H.getBounds().width / 2;
    redraw(tempLocation, 0, TEMP_H.getBounds().width,TEMP_H.getBounds().height, false);
    還沒想到更好的方法。
    re: SWT自定義組件之Slider Matthew Chen 2007-10-30 11:22  
    redraw(tempLocation, 0, TEMP_H.getBounds().width,TEMP_H.getBounds().height, false);
    是只重繪temp thumb原來的區(qū)域,因?yàn)閟lider本身添加自己為PaintListener,故重畫的時(shí)候paintControl被調(diào)用,那么paintControl方法作用的是整個(gè)圖形區(qū)域還是temp thumb原來的區(qū)域?如果是后者,那新的temp thumb所在的區(qū)域由誰在何時(shí)繪制? 如果是前者,重繪的不還是整體而不是thumb的區(qū)域嗎?
    Swing是Java平臺(tái)的標(biāo)準(zhǔn)桌面實(shí)現(xiàn),awt的早期的成型為Java技術(shù)在桌面的發(fā)展奠定了堅(jiān)實(shí)的基礎(chǔ),最底層的實(shí)現(xiàn)顯然是對(duì)等體來鋪墊的,往上走產(chǎn)生了兩種不同的思路,Swing和SWT,他們生來都是為了一個(gè)目的,讓Java更好用,更多人用,Swing是了不起的框架,經(jīng)典的設(shè)計(jì),復(fù)雜而靈活,SWT晚出生一點(diǎn),它是看著Swing的不足在發(fā)展自己的,它一出生并沒有想過和Swing爭,所以只是從實(shí)際的產(chǎn)品除非,滿足實(shí)際的需要,只是eclipse用得好了自然而然的想到借鑒它成功的因素,才想著復(fù)用自己的那一套,所以它一出生,就烙著便利軟件產(chǎn)品的特點(diǎn),即便是到了如今,JFace出來了,RCP出來了,哪一個(gè)不都是走在Swing前面,Swing開源的api也是有不少的,Application級(jí)的全棧式框架也不是沒人做過,為什么sun從來都沒有加入過JFC中,直到今天,Netbeans來了,帶來了這一些,但還是沒趕上SWT的,用過JFace的人都知道,IBM在其中開發(fā)了多少成熟的組件,Preference,Wizard,一個(gè)個(gè)很簡單,卻是現(xiàn)代軟件產(chǎn)品中已經(jīng)上升到了經(jīng)典范疇的概念,Swing的api中有嗎?還要復(fù)用多少次才會(huì)被加進(jìn)去呢?
    SWT的gc,它同樣可以繪制一切,那它的速度不會(huì)比Swing快多少吧?Swing中有象SWT中的FileDialog那樣借助操作系統(tǒng)實(shí)現(xiàn)的組件嗎?我用過JFileChooser,速度比FileDialog起碼慢5倍,創(chuàng)建完了不能釋放,以便下次打開保持較快的速度,這期間占用了多少內(nèi)存?跨越的基本是整個(gè)產(chǎn)品的生命周期,實(shí)際項(xiàng)目中,一個(gè)JFileChooser,足夠否決Swing的理由了,何況象JFileChooser一樣慢的,有多少個(gè)。SWT的一大弊端是jni,本地方法調(diào)用的時(shí)間消耗和內(nèi)存管理成本會(huì)在運(yùn)行時(shí)和編程上產(chǎn)生不利的影響,特別涉及純Java對(duì)象在本地組件上的呈現(xiàn),會(huì)是很大的問題,暫時(shí)并沒有好的解決方法,主要是繞過,缺失某些極具表現(xiàn)力的界面效果,而一板一眼,中規(guī)中矩。
    Swing沒有錯(cuò),錯(cuò)的是它身后的SUN,SWT并不是最好的,但它得益于IBM。從今天開始追來得及嗎?除非你讓我在Swing中用FileDialog,既然我已經(jīng)可以多少用些SWT_AWT了。
    從誕生以來,Java一直被認(rèn)為是一個(gè)擁有面向?qū)ο蟮母呒?jí)語言特性并擁有健壯穩(wěn)定運(yùn)行平臺(tái)的技術(shù),它作為語言和平臺(tái)的雙重身份而被程序員所接受,編寫富于編程思想和設(shè)計(jì)模式體系的軟件產(chǎn)品。
    它的優(yōu)點(diǎn)是虛擬機(jī),使其輕易實(shí)現(xiàn)了跨平臺(tái),強(qiáng)大的垃圾回收和相當(dāng)純粹的面向?qū)ο缶幊谭▌t,這些都是上層建筑,而在底層支持的,是一個(gè)仿真的機(jī)器,字節(jié)碼的解讀是以jvm的指令序列的方式,在底層,拋開了所有高級(jí)語言的特性,那就是接近匯編級(jí)別的指令。這樣的層次結(jié)構(gòu),不僅有利于跨平臺(tái)的實(shí)現(xiàn),更有利于語言技術(shù)的自適應(yīng)發(fā)展,隨時(shí)調(diào)整自身的語法和結(jié)構(gòu),與時(shí)俱進(jìn)。
    你可以使用接口作為一種行為的協(xié)議,它可以實(shí)現(xiàn)自繼承層次中的任何類(也就是它可以是任何派系)。
    1.在沒有關(guān)聯(lián)的類之間保留相似性而不依賴類的(繼承)關(guān)系。
    2.聲明多個(gè)類(它們多半是平行的,沒有繼承關(guān)系)中期望實(shí)現(xiàn)的方法。
    3.展現(xiàn)一個(gè)對(duì)象的編程接口而不是它的類。(面向接口編程,ruby中的duck type的思想解釋得很形象)
    3.建立多繼承模型,一種在一些oo語言中允許的一個(gè)類有多個(gè)父類的特性。
    報(bào)告一個(gè)問題,本人用的是jre1.6.0_0.3,exe4j有個(gè)功能是搜索指定目錄的jre,這個(gè)功能有個(gè)bug,如果你用剛重裝windows的還沒有裝任何軟件的操作系統(tǒng)測試,盡管目錄中包含的jre的版本,exe仍會(huì)報(bào)錯(cuò),提示缺少msvcr71.dll(這個(gè)文件其實(shí)在jre\bin下),解決辦法是把它放在exe的同一目錄下,或者用exe4j中可以指定本地庫的功能,在其中指定jre\bin為一個(gè)本地庫,那個(gè)dll并非jvm所特有,所以可能有些人裝了visual studio之類的默認(rèn)會(huì)裝一個(gè)到系統(tǒng)中去,所以看不出問題,希望lz驗(yàn)證一下,如果沒問題的話補(bǔ)在你的文章的后面提醒大家。
    re: Pro Netbeans IDE 6 Rich Client Platform Edition Matthew Chen 2007-10-23 16:30  
    lz很強(qiáng)啊,難道swing和swt通吃?
    我最早是用textpad,eclipse的語法解析和內(nèi)容助手是相當(dāng)強(qiáng)大的,據(jù)說只有idea更強(qiáng)一點(diǎn),netbeans和它同屬開源產(chǎn)品,java世界里一般都能找到2個(gè)以上競爭性的且都不錯(cuò)的產(chǎn)品,有福了大家。

    個(gè)人覺得如果從頭學(xué)起,特別是jvm指令基礎(chǔ),可以配合學(xué)一下ant(moven則是ant將來可能的替代,好比svn和cvs)。類名方法名的記憶并不是必須的,可以“懶加載”。
    re: Java語法總結(jié) - 索引 Matthew Chen 2007-10-22 14:10  
    @Raylong
    不是的,java的數(shù)組就是對(duì)象,對(duì)象任何時(shí)候都是在堆中存儲(chǔ),像你說的“如果沒有引用能到達(dá){1,2,3}它會(huì)銷毀的,如果int[] a = {1,2,3}; 包含在方法中,你說的沒錯(cuò)?!鼻鞍刖涫菦]錯(cuò),如果沒有任何引用確實(shí)會(huì)銷毀,a引用如果再賦值給其他變量(可能是全局的),那么這個(gè)數(shù)組不會(huì)被銷毀,讓它在棧中存放是沒有意義,如果這種情況大量出現(xiàn)明顯影響jvm的使用,sun不會(huì)留下讓程序員犯錯(cuò)誤的機(jī)會(huì)。
    swt就是jni實(shí)現(xiàn)的,所以它dispose的時(shí)候一定就釋放了系統(tǒng)的資源(除非swt可能有的bug),留下純java的對(duì)象卻是gc管理的,所以你確定dispose了的話問題就還在jvm內(nèi)部,大的數(shù)據(jù)量一般會(huì)有緩沖機(jī)制,說到這里,不知你的程序是否依托于容器了,提供了對(duì)象緩沖池的實(shí)現(xiàn),需要時(shí)獲得對(duì)象,釋放時(shí)直接歸到池中,不作銷毀,而是供下一次類似的請(qǐng)求直接修改并做二次使用,通過動(dòng)態(tài)調(diào)整對(duì)象數(shù)量來適應(yīng)不同需求。(但也可能內(nèi)存占用增加就時(shí)由這部分的不合理使用產(chǎn)生的,看看容器有沒有全局變量的使用,例如session之類的)

    你上一篇中提到任務(wù)管理器顯示占用增加,我覺得并不是程序在占用,而是虛擬機(jī)根據(jù)你程序使用內(nèi)存的趨勢(shì)不斷要求系統(tǒng)提供更大的內(nèi)存以保證程序的運(yùn)行。

    還有swt占用的系統(tǒng)資源不會(huì)由jvm管理,所以你對(duì)swt資源的釋放對(duì)jvm內(nèi)存占用沒有影響。
    re: Install4j介紹 Matthew Chen 2007-10-20 08:57  
    給我一份吧
    djsl6073@126.com
    re: exe4j視頻教程 Matthew Chen 2007-10-20 08:41  
    我也要一個(gè),謝謝了先
    djsl6073@126.com
    re: JAVA網(wǎng)頁瀏覽器 Matthew Chen 2007-10-04 09:29  
    @千里冰封
    其實(shí)無論jdic,還是java6里采用的方式,抑或swt,本質(zhì)都是jni的方式去解決這一問題,然后跨平臺(tái)實(shí)現(xiàn)了。比起swt,swing才是真正的龐大,當(dāng)然這也體現(xiàn)了它功能的強(qiáng)大以及速度的相對(duì)延遲,說道gui開發(fā)的首選,如果項(xiàng)目設(shè)計(jì)了和本地操作系統(tǒng)相關(guān)的,就好比這個(gè)瀏覽器,完全可以用swt了,畢竟它多少還是有跨平臺(tái)支持的。
    re: 白馬是馬嗎? Matthew Chen 2007-09-22 09:23  
    樓上說的在理,原帖是4年前的吧,那時(shí)java方興未艾,完全oo的想法正流行,大家對(duì)oo也都還帶有不同程度的誤解,而今再回首,也許都看得開了。
    以前也用相似的方法寫過一些其它的東西,比如可以自由拖動(dòng)并顯示背景的半透明窗口啦,放大鏡啦,結(jié)果都以失敗告終了,主要是無法隨背景的更新而更新,能夠更新的又無法保證效率,樓主有沒有興趣嘗試一下。
    re: SWT---資源---第一! Matthew Chen 2007-09-14 22:17  
    看冰封說的,swt還是不錯(cuò)的,老實(shí)說覺得用swt和用vb之類的差不多,簡單點(diǎn),追求速度,用戶滿意度,但由于并非由jvm控制資源,很難獲得穩(wěn)定性。swing的架構(gòu)那是經(jīng)典mvc,在配以jvm的呵護(hù),自然是優(yōu)秀的,簡直是媲美j2ee的架構(gòu)啊。
    re: JAVA中的時(shí)間操作 Matthew Chen 2007-09-13 09:56  
    聽說java中時(shí)間的操作有一些不是很精確,不清楚具體指哪一塊,樓主有沒有研究呢,感覺用calander會(huì)好點(diǎn).
    re: JButton大改造 Matthew Chen 2007-09-13 09:34  
    UI delegate 是swing在mvc基礎(chǔ)上加的一些提高靈活性的擴(kuò)展,外觀同樣是隨操作系統(tǒng)本地的外觀呈現(xiàn)的,awt只是swing最底層的基礎(chǔ),老實(shí)說這個(gè)基礎(chǔ)薄弱而且過于依賴平臺(tái)對(duì)等體,swing就好像借awt這只雞生的蛋,用的只是那個(gè)殼,而繪制了其他的一切來確保了幾乎沒有平臺(tái)差異,可能用慣了swt的對(duì)awt不會(huì)怎么反感,但是用慣了swing的卻不會(huì)想去用awt。
    覺得setUI的方法確實(shí)比在button上編碼修改好,起碼可以動(dòng)態(tài)裝卸。其實(shí)swing只對(duì)平臺(tái)共有的個(gè)性化組件使用了UI delegate,自然是認(rèn)為這些組件才被用戶視為理當(dāng)呈現(xiàn)為平臺(tái)上的樣子,而如樓主的這個(gè)例子,使得任何平臺(tái)和任何laf下按鈕都會(huì)是同一個(gè)樣子,談不上有什么問題,這個(gè)看項(xiàng)目的需要。
    swing是個(gè)不錯(cuò)的平臺(tái)差異化下桌面解決方法。
    個(gè)人也覺得oo中會(huì)出現(xiàn)一些問題,這些問題隨著技術(shù)和思想的進(jìn)步日漸凸現(xiàn).

    但就本文的觀點(diǎn),其實(shí)談不上是oo的封裝和繼承帶來的,很多往往是我們?cè)O(shè)計(jì)人員的疏忽.

    比如第一個(gè)stack的例子,ArrayList是明顯的jfc,繼承自它是完全沒有必要的,除非你的類在抽象空間中能夠真正代表ArrayList類的一個(gè)特殊子類集合,面向?qū)ο髢?yōu)先考慮抽象空間的完美而不是效率和實(shí)現(xiàn)空間的簡便,這是規(guī)則,也是出于ood的要求,在這個(gè)實(shí)例中,明顯應(yīng)該用聚合而不是繼承.

    拋出異常的問題,對(duì)不支持的方法拋出異常過于拙劣了,完全可以在繼承樹的層次上加上抽象類,很好地分叉,而不是依賴有限的異常處理機(jī)制,異常處理在面向?qū)ο髽?gòu)架中算得上相當(dāng)游離的一個(gè)功能了,盡管看似也有類的繼承關(guān)系,但獨(dú)立的捕獲和處理,并不適合作為業(yè)務(wù)邏輯的相關(guān)環(huán)節(jié)實(shí)現(xiàn).

    oo的問題個(gè)人覺得很多在繼承層次的復(fù)雜性,jfc庫繼承層次過多,導(dǎo)致無法查知當(dāng)前方法的具體調(diào)用棧位置——也就是具體方法的實(shí)現(xiàn)方式往往被復(fù)雜和繁冗的繼承和封裝掩蓋,讓人摸不找頭腦,不知道過程邏輯究竟在何處實(shí)現(xiàn),也就無法最大限度地學(xué)習(xí)已有的類庫(當(dāng)然,只是學(xué)習(xí)和修改,因?yàn)槭褂檬遣恍枰懒耍吘狗庋b就是為了屏蔽實(shí)現(xiàn)細(xì)節(jié)。)
    共3頁: 上一頁 1 2 3 下一頁 
    主站蜘蛛池模板: 美女视频黄a视频全免费网站色| 91亚洲va在线天线va天堂va国产 | 青苹果乐园免费高清在线| 亚洲av片劲爆在线观看| 成全视成人免费观看在线看| 91青青国产在线观看免费| 亚洲成AV人片在WWW色猫咪| 久久美女网站免费| 国产免费黄色大片| 青青草原精品国产亚洲av| 一个人免费日韩不卡视频| 免费播放春色aⅴ视频| 亚洲国产精品日韩在线| 18禁网站免费无遮挡无码中文 | 亚洲国产成人精品久久久国产成人一区二区三区综 | 99久久国产精品免费一区二区| 国产亚洲成人在线播放va| 九九热久久免费视频| 最新欧洲大片免费在线| 国产亚洲人成网站观看| 久久精品免费视频观看| 亚洲手机中文字幕| 蜜桃精品免费久久久久影院| 国产亚洲午夜精品| 天天操夜夜操免费视频| 国产青草亚洲香蕉精品久久 | 久久亚洲国产精品一区二区| 99xxoo视频在线永久免费观看| 亚洲宅男天堂a在线| 国产成人免费手机在线观看视频 | 亚洲日本乱码一区二区在线二产线 | 亚洲色自偷自拍另类小说| 久久青草国产免费观看| 国产成人精品日本亚洲网址 | 搡女人真爽免费视频大全| 亚洲熟女一区二区三区| 女人体1963午夜免费视频| 亚洲成a人片在线网站| 国产国产人免费人成免费视频| 中出五十路免费视频| 亚洲一级毛片免费看|