通過對Java一段時(shí)間的自學(xué),我想在此談?wù)勎易约好鲗W(xué)習(xí)Java的學(xué)習(xí)過程,希望能給初學(xué)Java的學(xué)習(xí)者提供一點(diǎn)參考?,F(xiàn)以七個(gè)步驟來說明:
第一步,4安裝JDK。 JDK的學(xué)習(xí)是有些難度的,最需要關(guān)注的有兩個(gè)問題:一個(gè)是CLASSPATH的問題,它需要弄明白的是JRE的ClassLoader是如何加載Class的;另一個(gè)問題是package和import問題,它其實(shí)是一個(gè)如何來尋找類的路徑的問題。
只要摸索清楚了這兩個(gè)問題,就可以說是解決了學(xué)習(xí)Java和使用JDK的最大難題。
第二步,學(xué)習(xí)Java的語法。Java的語法是類似于C和C++的,所以學(xué)過C或C++的學(xué)習(xí)者就會很容易掌握的,但是有一點(diǎn)需要注意的是要弄清幾個(gè)關(guān)鍵詞的用法,如: public,protected,private,static ,這就需要找些資料,花些時(shí)間好好琢磨琢磨了。
第三步,學(xué)習(xí)Java的面向?qū)ο蟮木幊陶Z言的特性。如:繼承,構(gòu)造器,抽象類,接口,方法的多態(tài),重載,覆蓋,Java的異常處理機(jī)制。學(xué)習(xí)這些知識對于一個(gè)沒有學(xué)習(xí)過C++的學(xué)習(xí)者來說,就需要花些時(shí)間揣摩了。
第四步,開始學(xué)習(xí)Java的類庫。Java的基礎(chǔ)類庫其實(shí)就是JDK安裝目錄下面jrelibt.jar這個(gè)包?;A(chǔ)類庫的學(xué)習(xí)其實(shí)就是學(xué)習(xí)rt.jar。基礎(chǔ)類庫里面的類很多。我覺得最核心的只有4個(gè):
java.lang.*;java.io.*;java.util.*;java.sql.*;
對于這四個(gè)包的學(xué)習(xí)首先要理解整個(gè)package的框架內(nèi)容,了解整個(gè)package的class,interface,exception的構(gòu)成,并且要知道包由哪些類構(gòu)成,這些類的用途是什么,分別完成什么功能。只要你對每個(gè)包的總體框架的把握住,在編碼的時(shí)候,對于每個(gè)類調(diào)用,你就可以邊寫邊查Documentation。
第五步,進(jìn)一步學(xué)習(xí)Documentation內(nèi)的其它類。因?yàn)橥ㄟ^上面的學(xué)習(xí),我們就有了一定的基礎(chǔ),可以學(xué)習(xí)Documentation了。其它一些比較有用處的類有:
java.text.*;java.net.*;javax.naming.*;
第六步,Java Web 編程。Web編程的核心是HTTP協(xié)議,雖說HTTP協(xié)議和Java沒什么關(guān)系,可是如果不熟悉HTTP協(xié)議的話,雖然也可以學(xué)好Servlet/JSP編程,但達(dá)不到舉一反三的熟練程度,因此必須注重HTTP協(xié)議的學(xué)習(xí)。
Servlet/JSP編程的本質(zhì)其實(shí)就是反復(fù)調(diào)用這些類來通過HTTP協(xié)議在Web Server和Brower之間交談。
Java Web編程學(xué)習(xí)的另一個(gè)重點(diǎn)就是Web Application的設(shè)計(jì)模式,怎樣進(jìn)行業(yè)務(wù)邏輯的分析,并進(jìn)行合理的設(shè)計(jì),按照MVC設(shè)計(jì)模式的要求,運(yùn)用Servlet和JSP分別完成不同的邏輯層,掌握如何在Servlet和JSP之間進(jìn)行流程的控制和數(shù)據(jù)的共享,以及Web Application應(yīng)該如何配置和部署。
第七步,J2EE編程。這一步的學(xué)習(xí)是有一定的難度的,因?yàn)橐陨纤鶎W(xué)的知識內(nèi)容都是只涉及一個(gè)方面,而像EJB,JMS,JTA等核心的J2EE規(guī)范往往是幾種Java技術(shù)的綜合運(yùn)用的結(jié)晶。以下是J2EE編程需要注意的幾點(diǎn)內(nèi)容,望大家注意:
〈一〉,學(xué)習(xí)好JNDI。JNDI是App Server定位服務(wù)器資源(EJB組件,Datasouce,JMS)查找方法,如果對JNDI不熟悉的話,EJB,JMS這些東西幾乎學(xué)不下去。JNDI其實(shí)就是javax.naming.*這個(gè)包。難點(diǎn)在于服務(wù)器資源文件的配置。對于服務(wù)器資源文件的配置,就需要看看專門的文檔規(guī)范了,比如web.xml的寫法,ejb-jar.xml的寫法等等。針對每種不同的App Server,還有自己的服務(wù)資源配置文件,也是需要熟悉的?!炊?,學(xué)習(xí)好JTA。主要是要理解JTA對于事務(wù)的控制的方法,以及該在什么場合使用JTA?!慈?,學(xué)習(xí)好對象序列化和RMI,RMI是EJB的基礎(chǔ)?!此摹?,學(xué)習(xí)好JMS和EJB,對于EJB來說,最關(guān)鍵的是要理解EJB是如何通過RMI來實(shí)現(xiàn)對遠(yuǎn)端對象的調(diào)用的,以及在什么情況下要用到EJB。
學(xué)習(xí)完EJB,JMS,我們會很自然的需要學(xué)習(xí)一下以下兩個(gè)領(lǐng)域的知識,一個(gè)是UML,另一個(gè)是Design Pattern。學(xué)習(xí)過C的你就可以知道一個(gè)好的軟件框架是軟件開發(fā)成功的必要條件,所以我們一定要非常重視框架(Framework)的設(shè)計(jì),因此設(shè)計(jì)模式和框架的學(xué)習(xí)就是我們學(xué)習(xí)的一個(gè)重點(diǎn)了。
學(xué)習(xí)軟件開發(fā)確實(shí)有一定的難度,也很辛苦,需要付出很多努力,因此在寫完這篇文章之后,我特別想對初學(xué)的朋友們說:朋友們千萬不要半途而廢,我們學(xué)習(xí)軟件開發(fā)的人是創(chuàng)造者,是規(guī)劃者,我們可以用在鍵盤上舞動的雙手創(chuàng)造出更加美麗更加輝煌的未來!
作者:鄒虎 文章來源:蘭州商學(xué)院長青學(xué)院