標籤:java學習 java自學 java怎麼學 java學習線路圖
在學習JAVA前,對於一個真正初學者(也就是從零開始學習JAVA人員)的一個問題:什麼是JAVA,然後才是怎麼學習JAVA?JAVA是sun microsystems在1995年推出的進階程式設計語言,其分為Java SE、Java EE、Java ME三大體系,而JAVA SE是JAVA的基礎,繼JAVASE之後是JAVAEE,JAVA ME。JAVASE是JAVAEE的基礎,Servlet、JSP是架構的基礎。資料庫方面個人建議學習oracle,當然其它的像 MySQL,MSSQL,都可以,只要會一個,再學其它的就會發現都是非常類似的。另外就是html,css,javascript,xml,這些是 JAVAWEB編程要用到的。建議學習順序:1、html,css,javascript,xml2、JAVASE3、JAVAEE,包括 Servlet、JSP、架構至於資料庫的學習,在JAVA之前,之中,之後都可以,建議在JAVA之前,至少在JAVAEE之前。
那麼到底怎麼學習JAVA,特別針對零基礎的初學者,以下是我為大家準備的JAVA學習線路圖:
| 650) this.width=650;" title="JAVA學習路線圖.jpg" alt="JAVA學習路線圖" src="http://s3.51cto.com/wyfs02/M02/6C/D8/wKioL1VUOc-Sfjh9AAK4NTy3-vE419.jpg" /> |
JAVA學習路線圖 |
ps:請按優先順序來學習,①代表重點掌握要熟練,②代表要掌握,③有個大體的映像就行,別人問你要說得出來個大概
物件導向的初步瞭解:
面向過程向物件導向的過渡:
相信大多數的朋友都應該接觸過C語言,C語言是面向過程語言的一個代表,如何區分物件導向與面向過程呢?這裡給大家舉個例子: 比如我們平時玩的棋類遊戲。
| 650) this.width=650;" style="float:none;" title="1.jpg" alt="wKiom1VUOF7CPckPAAHPkLGJBcI358.jpg" src="http://s3.51cto.com/wyfs02/M02/6C/DE/wKiom1VUOF7CPckPAAHPkLGJBcI358.jpg" /> |
JAVA物件導向 |
籠統定義:將生活中的對象進行描述,通過類的形式,描述事物的屬性和行為。物件導向是從宏觀來看待問題的,面向過程則是從微觀來解析問題。
物件導向的幾個基本概念,我們需要瞭解清楚:
1.對象:人們要進行研究的任何事物
2.類:具有相同或相似性質的對象的抽象
3.對象的狀態與行為:資料與相應的操作
4.類的結構:類間的結構關係,"一般---具體 is a"關係,和"整體---部分" has a"關係
物件導向的基本特徵:
①封裝(Encapsulation):隱藏對象的實現細節,通過公有方法暴露對象功能
②多態(Polymorphism):子類對象可以直接賦值給父類,但運行時表現出子類的行為特徵
③繼承(Inheritance):一個類共用一個或多個類定義的結構與行為,表示一種泛化/特化的層次關係
④抽象(Abstraction):忽略主題中與當前目標無關的方面,以便更充分地注意與當前目標有關的方面,包含過程抽象與資料抽象
物件導向的方式:ADP
1.OOA(分析):產生系統的類和對象,描述軟體要做什麼
2.OOD(設計):OOA的細化,強調複雜系統的正確和有效構建,即確定類間的關係,對象間的關係,3.類的狀態轉換,模組間的依賴等,軟體怎麼做
4.OOP(編碼):三個標準條件:1.使用對象而非演算法作為基本邏輯組件;2.任意對象都需為某個類的執行個體3.類通過繼承關係與其他類相關
Java語言簡介
大概曆史:
Sun公司的,Java的跨平台使得Java深受歡迎,而Java這個名稱是因為,某人喜歡喝"爪窪島"的咖啡,Java的名字就這麼來了,在中國又叫"甲骨文",後來sun把Java賣給了Oracle,所以現在的Java考試認證也是由Oracle負責舉行的(ps:如果有興趣瞭解的可去百度百科瞧一瞧)
四種技術架構:
JAVASE,JAVAEE,JAVEME(嵌入式,已淘汰),JavaCard(適用於智慧卡的Java平台)
Java的主要優點:物件導向,跨平台,多線程,安全,簡單和健壯性,以及改進了的解釋性:為了彌補解釋語言較慢的不足,Java採用先行編譯方法,產生位元組代碼,有些JAVA環境用JIT編譯器將位元組碼編譯成機械碼,直接運行,針對重複執行的服務端軟體可以達到C的速度
相關名詞解釋:
JVM Java虛擬機器(Java Vittual Machine)是一種想象中的機器,在實際電腦上通過軟體類比來實現,在Java運行環境中處於可信地位,它使得Java可以跨平台執行,包含一套位元組碼指令集,一組寄存器,一個棧,一個記憶體回收堆和一個儲存方法域運行原理:在任何一個平台上都給編譯器一個共同的介面,Java來源程式經過編譯器編譯後變成位元組碼,位元組碼再由虛擬機器解釋執行,虛擬機器將每條執行的位元組碼送給解譯器,解譯器翻譯成特定機器上的機器碼最後在特定的機器上運行
JRE與JDK
JRE(Java Runtime Enviroment)運行時環境:JVM + 核心類庫
JDK(Java Development Kit)開發工具集:JRE + 編譯器
JVM的記憶體回收機制(Garbage Collection)
回收的是沒有任何引用指向的對象空間,一般情況下Java會自動進行垃圾收集
如果想要手動請求垃圾收集,可以調用system.gc()或者finalize()方法建議;
也僅僅是建議而已,並不能精確地控制記憶體回收機制的執行
開發環境的搭建
jdk的安裝:現在最新的是 jdk 1.7,有興趣的可以去官網下載,筆者用的是1.6,連結:jdk 1.6下載
都是傻瓜式地下一步就可以了
環境變數的配置
右鍵我的電腦--->進階--->環境變數
JAVA_HOME:jdk的安裝目錄
Path:在最前面添加:%JAVA_HOME%\bin; !別刪掉後面的啊,不然你電腦出毛病了別找我= =
CLASSPATH:%JAVA_HOME%\lib\tools.jar;
| 650) this.width=650;" style="float:none;" title="2.jpg" alt="wKioL1VUOeLy0qbWAAHlnv7_ML8807.jpg" src="http://s3.51cto.com/wyfs02/M00/6C/D9/wKioL1VUOeLy0qbWAAHlnv7_ML8807.jpg" /> |
JAVA環境變數的配置 |
建立JAVA_HOME
| 650) this.width=650;" style="float:none;" title="3.jpg" alt="wKiom1VUOHvgEsxiAABykkWxs1E681.jpg" src="http://s3.51cto.com/wyfs02/M00/6C/DE/wKiom1VUOHvgEsxiAABykkWxs1E681.jpg" /> |
建立JAVA_HOME |
修改Path變數
| 650) this.width=650;" style="float:none;" title="4.jpg" alt="wKioL1VUOfaTJ0VKAABuzGyrkDY550.jpg" src="http://s3.51cto.com/wyfs02/M01/6C/D9/wKioL1VUOfaTJ0VKAABuzGyrkDY550.jpg" /> |
修改Path變數 |
CLASSPATH變數的配置:
| 650) this.width=650;" style="float:none;" title="5.jpg" alt="wKioL1VUOfjx2tiTAAB0s9O_BN0777.jpg" src="http://s3.51cto.com/wyfs02/M02/6C/D9/wKioL1VUOfjx2tiTAAB0s9O_BN0777.jpg" /> |
LASSPATH變數的配置 |
驗證環境是否配置完成
在cmd(win + R)中輸入javac,出現效果,說明配置環境完成
| 650) this.width=650;" style="float:none;" title="6.jpg" alt="wKiom1VUOIizyHANAAMwLgxgrt8286.jpg" src="http://s3.51cto.com/wyfs02/M01/6C/DE/wKiom1VUOIizyHANAAMwLgxgrt8286.jpg" /> |
驗證環境是否配置完成 |
jdk安裝目錄下的幾個包:
bin:工具命令:javac,java等 jre:運行Java所需要的JRE環境
lib:JDK工具指令的實際執行程式 src.zip:核心類庫的原始碼
第一個Hello World詳解:
Java代碼的運行原理:
| 650) this.width=650;" style="float:none;" title="7副本.jpg" alt="wKioL1VUOgPCFLx-AAFJe4qanwA720.jpg" src="http://s3.51cto.com/wyfs02/M02/6C/D9/wKioL1VUOgPCFLx-AAFJe4qanwA720.jpg" /> |
JAVA運行代碼原理 |
dos的幾個基本指令
dir:列出目錄與檔案夾
cd * .. \:進入指定目錄
md:建立目錄
rd:刪除目錄,但是只能夠刪除空的檔案夾,這樣可以防止誤刪
del:刪檔案,多檔案時可以,*.txt 刪除所有txt檔案這樣
exit:退出dos
代碼編寫:
public class HelloWorld //public是一個存取修飾詞,class表示聲明一個類,HelloWorld類名{ public static void main(String args[]) //主方法,程式的入口 { System.out.println("Hello World!"); //調用System的out對象的println()方法列印出"Hello World!" }}/*這裡要注意,檔案名稱需與公用類名相同,既儲存的時候要寫成:HelloWorld.java,否則報錯,缺少什麼;還有一個java檔案只能有一個公用類或者公用借口!!*/
調試運行:
step 1:開啟cmd,來到java檔案的存放目錄
step 2:編譯:javac HelloWorld.java //不要漏.java;如果出錯了,要修改java檔案中錯誤的檔案再調用javac編譯
step 3:運行:java HelloWorld
:
650) this.width=650;" style="float:none;" title="8副本.jpg" alt="wKiom1VUOI2RMfyeAAE-lA3EJQw406.jpg" src="http://s3.51cto.com/wyfs02/M02/6C/DE/wKiom1VUOI2RMfyeAAE-lA3EJQw406.jpg" /> |
JAVA調試運行 |
綜合來說,JAVA是一門語言,學習JAVA,興趣是最好的老師,只有抱著熱枕的心態才能學好一門語言,深度學好一門語言。如果你想利用JAVA製作網站,那麼還應該學習什麼,那就是所謂的前端,它包括html,css,div。縱深學習也是相當重要的。
此外,對於零基礎學習JAVA初學者建議在自我學習之餘,多餘行業人溝通交流是必要的,不僅僅是為了學習JAVA這門語言,更多的要全方面的瞭解JAVA。這是最方便快捷的一種學習方式,其實、qq等這些線上溝通工具在拉近我們的距離外,也可以成為我們的學習提供一種工具。如果大家都想學習交流JAVA,編者到是可以推薦一個群,457036818。上面提供有最新的JAVA視頻教程,以及最牛的JAVA學習資料,還有一個最值得推薦的一本書《JAVA編程思想》中英文版本。
本文出自 “JAVA學習視頻教程” 部落格,請務必保留此出處http://10239772.blog.51cto.com/10229772/1651222
JAVA學習_零基礎學習JAVA方法_零基礎學習JAVA思路