java概念
Java是一種可以撰寫跨平臺應用程序的、面向?qū)ο蟮某绦蛟O計語言。簡單說,Java就是一種語言,不過是一種針對jvm的語言,Java編譯后是字節(jié)碼,而jvm會把這些字節(jié)碼解釋成機器碼,然后做出相應的動作。
java虛擬機
Java虛擬機(JVM)是Java Virtual Machine的縮寫,是指建立在硬件和操作系統(tǒng)之上,運用硬件或軟件手段實現(xiàn)的虛擬的計算機。
Java虛擬機有自己完善的硬件架構(gòu),如處理器、堆棧、寄存器等,還具有相應的指令系統(tǒng)。可以運行Java字節(jié)碼的虛擬計算機系統(tǒng) ,它有一個解釋器組件,可以實現(xiàn)Java字節(jié)碼和計算機操作系統(tǒng)之間的通信。
java的垃圾回收機制
gc即垃圾收集機制是指jvm用于釋放那些不再使用的對象所占用的內(nèi)存。在C/C++中,程序員需要自己管理內(nèi)存,Java提供了一個系統(tǒng)級的線程來跟蹤內(nèi)存分配,不再使用的內(nèi)存區(qū)將會自動回收不同的JVM的實現(xiàn)中,垃圾收集機制大不相同若需要使一個對象被回收,必須移除其上的所有引用,通??蓪⑵渲肗ULL但是,即使有了垃圾收集機制,仍然可能出現(xiàn)內(nèi)存溢出的情況。
java運行環(huán)境搭建
JAVA_HOME
C:Javajdk1.7.0_55
PATH
%JAVA_HOME%bin;%JAVA_HOME%jrebin;
CLASSPATH
.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar
java的優(yōu)點
1、平臺無關性
平臺無關性是指Java能運行于不同的平臺。Java引進虛擬機 原理,并運行于虛擬機,實現(xiàn)不同平臺的Java接口之間。使用Java編寫的程序能在世界范圍內(nèi)共享。虛擬機是個用來解釋Java指令的軟件包,可以讓Java在任何機器上運行,比如有運行在Mac或 UNIX下的虛擬機軟件包。
2、安全性
Java的編程類似C++,學習過C++的讀者將很快掌握Java的精髓。Java舍棄了C++的指針對存儲器地址的直接操作,程序運行時,內(nèi)存由操作系統(tǒng)分配,這樣可以避免病毒通過指針侵入系統(tǒng)。Java對程序提供了安全管理器,防止程序的非法訪問。
3、面向?qū)ο?/strong>
Java吸取了C++面向?qū)ο蟮母拍?,將?shù)據(jù)封裝于類中,利用類的優(yōu)點,實現(xiàn)了程序的簡潔性和便于維護性。類的封裝性、繼承性等有關對象的特性,使程序代碼只需一次編譯,然后通過上述特性反復利用。
4、分布式
Java建立在擴展TCP/IP網(wǎng)絡平臺上。庫函數(shù)提供了用HTTP和FTP協(xié)議傳送和接受信息的方法。這使得程序員使用網(wǎng)絡上的文件和使用本機文件一樣容易。
5、解釋型
我們知道C,C++等語言,都是針對CPU芯片進行編譯,生成機器代碼,該代碼的運行就和特定的CPU有關。Java不像C或C++,它不針對CPU芯片進行編譯,而是把程序編譯成稱為自字節(jié)碼的一種“中間代碼”。字節(jié)碼是很接近機器碼的文件,可以在提供了java虛擬機(JVM)的任何系統(tǒng)上被解釋執(zhí)行。
6、動態(tài)
java程序的基本組成單元就是類,有些類是自己編寫的,有些是從類庫中引入的,而類又是運行時動態(tài)裝載的,這就使得Java可以在分部環(huán)境中動態(tài)的維護程序及分類,而不像C++那樣,沒檔期類庫升級以后,如果想讓程序具有新類庫提供的功能,就需要修改程序,重新編譯。
java的用途
1、網(wǎng)絡應用程序開發(fā),例如:網(wǎng)上銀行(中國銀行,建設銀行,工商銀行的網(wǎng)上銀行都是用J2EE開發(fā)出來的,你看看他網(wǎng)銀的網(wǎng)頁的后綴名JSP就知道),網(wǎng)頁游戲等。
企業(yè)管理軟件,現(xiàn)在很流行的B/S(瀏覽器/服務器)架構(gòu)管理程序很多就是用J2EE開發(fā)的。
3、手機游戲,你看到那些手機游戲安裝文件的后綴名.jar了嗎?就是這JAVA開發(fā)出來的標志。開發(fā)這些東西一般用JAVA ME(J2ME)。
4、嵌入式開發(fā),例如給電視機頂盒,小型家電寫程序。java se(j2se)是一個基礎,如果你想靠JAVA吃飯那么J2EE和J2ME要選一個來學深入學習。如果想做網(wǎng)絡程序就學J2EE,想學手機編程,嵌入式類的就去學J2ME.不過一般J2EE的工作機會比較多。
推薦教程:java快速入門