數(shù)值類型:
雖然是面向?qū)ο蟮恼Z言,但是在使用上數(shù)值類型還是必不可少的,如果在C的學(xué)習(xí)中已經(jīng)掌握了C的數(shù)值計(jì)算和轉(zhuǎn)換規(guī)則,那我想這里應(yīng)該沒有什么問題,只有兩點(diǎn)需要注意:1、14.0這樣的浮點(diǎn)常量被認(rèn)為是double型,只有加上f后綴才是float型的;2、整數(shù)常量說起來被認(rèn)為是int型,但是在編譯時(shí),可以認(rèn)為編譯器將其看作能表示該數(shù)的最小數(shù)值,因此byte b = 100;不會(huì)報(bào)錯(cuò)。
引用類型:
其實(shí)所謂引用類型在C++中已有體現(xiàn),就是傳參的時(shí)候有一種引用類型,從C來考慮,它就是一個(gè)指針,只不過,我們不能對它進(jìn)行指針上的硬操作。所以這里的重點(diǎn)是:1、Java里所有的對象都是在堆中生成的,所以需要類似指針的東西指向它,那就是引用;2、我們通過引用操作的是引用所指向的對象,除了賦值操作外,應(yīng)該就沒有什么操作是針對引用本身的了,這一點(diǎn)是C的指針與Java的引用區(qū)別所在。
類和對象:
這是一個(gè)大塊,有很多東西,不展開說了,就說幾個(gè)重點(diǎn):1、類方法、類屬性與成員方法、成員屬性在加載、初始化、使用上的異同;2、在構(gòu)造函數(shù)中,this()和super()的用法;3、子類的加載過程、初始化過程和構(gòu)造過程;4、方法的重載和覆寫;5、覆寫所引出的多態(tài)問題。(注意:多態(tài)之應(yīng)用在方法上,對屬性沒有作用)
函數(shù)調(diào)用的參數(shù)傳遞:
如果把引用類型所記錄的地址值,就看作是引用類型變量的值的話,那么,Java的所有方法調(diào)用的時(shí)候,都是采用的值傳遞??數(shù)值類型傳數(shù)值,引用類型傳地址。
IO流:
與C比起來,Java的輸入輸出,尤其是輸入是非常麻煩的,也許是因?yàn)槌鲇诿嫦驅(qū)ο蟮目紤]吧?不知道。Java提供了很多的IO流,但是我們并不必將各種IO都搞清楚,我們只需要了解字節(jié)流與字符流各有什么功能,字符流是如何在字節(jié)流之上構(gòu)造的,幾乎所有的字符流構(gòu)造的時(shí)候都是建立在一個(gè)已有的字節(jié)流的基礎(chǔ)上的,并且它的這種設(shè)計(jì)使得我們可以像套管子一樣,將IO流一節(jié)一節(jié)套起來,直到得到我們想使用的IO對象(例:BufferedReader的使用)。在我們以后使用的時(shí)候,我們可以再去查API,主要要看的幾個(gè)類是:FileReader、FileWriter、BufferedReader,再配合上System.out對象,對于文本的輸入、輸出來說,就足夠用了,其他的沒有必要看那么多,用的時(shí)候再看了。
容器:
個(gè)人認(rèn)為,這是Java編程的一大利器,常用的類是:ArrayList(List)作為可變長數(shù)組、HashMap(Map)用來建立查找表,Set很少用,只在HashMap的使用中連帶用過一些。通過對這兩個(gè)類的熟悉,能夠?qū)ist、Set和Map三大類的基本用法掌握。另外它的幾個(gè)輔助類要掌握:Iterator和Collections。Collections類提供容器的一些通用工具,比如排序。而說到排序,就牽扯出了比較器:Comparator。能夠熟練使用Comparator類,可以讓你為自己的需求和自己的類定制排序方案。
AWT和SWING:
個(gè)人認(rèn)為,Java在圖形界面的制作上有著非常好的封裝性,我以前曾經(jīng)試圖學(xué)過MFC,MFC在生成圖形界面的時(shí)候會(huì)幫助你生成一些代碼,然后讓你在這些代碼的指定位置添加代碼以實(shí)現(xiàn)功能,我這個(gè)人有個(gè)習(xí)慣,如果讓我看到了一些東西,那么我不搞清除為什么這么寫,就不會(huì)往下走,看到那許多代碼,自然就想弄清楚那些是什么,結(jié)果引出來好多知識,后來我才知道其中有些是調(diào)用WinAPI,結(jié)果我到現(xiàn)在還是不會(huì)用MFC。這里并不是貶低MFC,我相信MFC有其過人之處,只不過個(gè)人認(rèn)為它的封裝性做得不好,暴露出了太多東西,也許能夠提高靈活性,不過,可能我跟它無緣:(。在這方面Java就做得不錯(cuò),給你一個(gè)類,你用就是了,它將圖形界面的低層實(shí)現(xiàn)隱藏的很好,將其作為一個(gè)對象給你,而你只需要在這個(gè)對象上修修改改,挺方便的。
作為初學(xué)者,我覺得AWT的重點(diǎn)在于它的幾個(gè)Listener的用法,還有布局格式,然后就是那許多的Component的用處和用法。
不過,因?yàn)槲覀€(gè)人使用的原因,所以至今AWT和SWING都用得很少,所以這方面也就不便多說了,抱歉。寫這些并不是告訴大家怎么解決問題,因?yàn)槊恳粋€(gè)都有很多可寫,只是希望能給初學(xué)者一點(diǎn)參考,希望能夠幫助初學(xué)者們有的放矢地看書.?(?轉(zhuǎn)載
920-432?
920-553?)
|