BlogJava 聯系 聚合 管理  

          Blog Stats

          隨筆檔案

          exams


          java世界

          世界Java

          數值類型:

          雖然是面向對象的語言,但是在使用上數值類型還是必不可少的,如果在C的學習中已經掌握了C的數值計算和轉換規則,那我想這里應該沒有什么問題,只有兩點需要注意:1、14.0這樣的浮點常量被認為是double型,只有加上f后綴才是float型的;2、整數常量說起來被認為是int型,但是在編譯時,可以認為編譯器將其看作能表示該數的最小數值,因此byte b = 100;不會報錯。

          引用類型:

          其實所謂引用類型在C++中已有體現,就是傳參的時候有一種引用類型,從C來考慮,它就是一個指針,只不過,我們不能對它進行指針上的硬操作。所以這里的重點是:1、Java里所有的對象都是在堆中生成的,所以需要類似指針的東西指向它,那就是引用;2、我們通過引用操作的是引用所指向的對象,除了賦值操作外,應該就沒有什么操作是針對引用本身的了,這一點是C的指針與Java的引用區別所在。

          類和對象:

          這是一個大塊,有很多東西,不展開說了,就說幾個重點:1、類方法、類屬性與成員方法、成員屬性在加載、初始化、使用上的異同;2、在構造函數中,this()和super()的用法;3、子類的加載過程、初始化過程和構造過程;4、方法的重載和覆寫;5、覆寫所引出的多態問題。(注意:多態之應用在方法上,對屬性沒有作用)

          函數調用的參數傳遞:

          如果把引用類型所記錄的地址值,就看作是引用類型變量的值的話,那么,Java的所有方法調用的時候,都是采用的值傳遞??數值類型傳數值,引用類型傳地址。

          IO流:

          與C比起來,Java的輸入輸出,尤其是輸入是非常麻煩的,也許是因為出于面向對象的考慮吧?不知道。Java提供了很多的IO流,但是我們并不必將各種IO都搞清楚,我們只需要了解字節流與字符流各有什么功能,字符流是如何在字節流之上構造的,幾乎所有的字符流構造的時候都是建立在一個已有的字節流的基礎上的,并且它的這種設計使得我們可以像套管子一樣,將IO流一節一節套起來,直到得到我們想使用的IO對象(例:BufferedReader的使用)。在我們以后使用的時候,我們可以再去查API,主要要看的幾個類是:FileReader、FileWriter、BufferedReader,再配合上System.out對象,對于文本的輸入、輸出來說,就足夠用了,其他的沒有必要看那么多,用的時候再看了。

          容器:

          個人認為,這是Java編程的一大利器,常用的類是:ArrayList(List)作為可變長數組、HashMap(Map)用來建立查找表,Set很少用,只在HashMap的使用中連帶用過一些。通過對這兩個類的熟悉,能夠將List、Set和Map三大類的基本用法掌握。另外它的幾個輔助類要掌握:Iterator和Collections。Collections類提供容器的一些通用工具,比如排序。而說到排序,就牽扯出了比較器:Comparator。能夠熟練使用Comparator類,可以讓你為自己的需求和自己的類定制排序方案。

          AWT和SWING:

          個人認為,Java在圖形界面的制作上有著非常好的封裝性,我以前曾經試圖學過MFC,MFC在生成圖形界面的時候會幫助你生成一些代碼,然后讓你在這些代碼的指定位置添加代碼以實現功能,我這個人有個習慣,如果讓我看到了一些東西,那么我不搞清除為什么這么寫,就不會往下走,看到那許多代碼,自然就想弄清楚那些是什么,結果引出來好多知識,后來我才知道其中有些是調用WinAPI,結果我到現在還是不會用MFC。這里并不是貶低MFC,我相信MFC有其過人之處,只不過個人認為它的封裝性做得不好,暴露出了太多東西,也許能夠提高靈活性,不過,可能我跟它無緣:(。在這方面Java就做得不錯,給你一個類,你用就是了,它將圖形界面的低層實現隱藏的很好,將其作為一個對象給你,而你只需要在這個對象上修修改改,挺方便的。

          作為初學者,我覺得AWT的重點在于它的幾個Listener的用法,還有布局格式,然后就是那許多的Component的用處和用法。

          不過,因為我個人使用的原因,所以至今AWT和SWING都用得很少,所以這方面也就不便多說了,抱歉。寫這些并不是告訴大家怎么解決問題,因為每一個都有很多可寫,只是希望能給初學者一點參考,希望能夠幫助初學者們有的放矢地看書. ( 轉載920-432 920-553 )
          posted on 2007-11-19 11:34 java2java 閱讀(1516) 評論(4)  編輯  收藏

          評論

          # re: Java學習過程中應該理解的一些重點內容 2007-11-19 11:58 隔葉黃鶯
          float f=14.0; 編譯不過,是因為java編譯器把 1.40 當成double型對待
          而類似的
          long l = 100;
          int i = 100;
          byte b = 100;
          都能編譯過,而不需在100后加L什么的,是因為java對整型的存儲方式是一樣的,對于float和和double則不同了,所以要明確指定
          但如果 byte b = 128,就不干了,超過范圍了

          個人對“Java的所有方法調用的時候,都是采用的值傳遞”還是比較認可的,可能有些人的看法不一,這都關系不大,只要實際理解沒錯就行,使用時不會搞錯就行

          java的IO流我覺得還是比C++要好的

          MFC確實與AWT/SWING比起來封裝性沒那么好,如果直接用Windows SDK來寫窗口程序一般會寫出許多 switch/case 來處理事件,而在MFC定義的是一堆的消息映射宏,把宏全展開來就能理解了,但讀起來感覺并不那么,所以能理解消息宏是怎么回事,會應用就夠了

          推薦一下SWT,運行要比SWING快,布局也更好,編程方式有些類似Windows SDK寫窗口,畢竟他們靠得距離有些近的。  回復  更多評論
            

          # re: Java學習過程中應該理解的一些重點內容 2007-11-19 13:24 千里冰封
          對于樓上的說明有一點不敢茍同,那就是SWT比SWING快,不知道SWT有什么地方好值得推薦的?
          一,它不是標準的JDK實現
          二,它的實現原理太土,很多地方不是JAVA的思想
          三,你用過SWING才知道,SWING是多么強大.它的設計思想,它的速度,以及它的理念,還有它的擴展性  回復  更多評論
            

          # re: Java學習過程中應該理解的一些重點內容 2007-11-19 17:52 隔葉黃鶯
          SWT因為不是純種的JAVA,所以不免讓JAVA迷們在感情上能很好的接受他。
          速度上它絕對要比SWING快

          道理上就像本地程序比JAVA程序快那么簡單  回復  更多評論
            

          # re: Java學習過程中應該理解的一些重點內容[未登錄] 2008-05-26 21:01 zz
          感謝樓主?。。?nbsp; 回復  更多評論
            


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 理塘县| 郎溪县| 台北县| 工布江达县| 特克斯县| 灵寿县| 盘锦市| 浮梁县| 峡江县| 乡城县| 平湖市| 牡丹江市| 南平市| 武安市| 洪雅县| 新昌县| 桑日县| 会昌县| 黄大仙区| 彰化县| 浦城县| 吴堡县| 黑山县| 渝北区| 阿克陶县| 开封县| 湄潭县| 泽普县| 运城市| 磐安县| 天长市| 通城县| 雷波县| 林芝县| 祥云县| 天柱县| 襄城县| 柳河县| 庄浪县| 自贡市| 阿拉善右旗|