A. java運行庫是什麼
對於java初學者來說,往往不懂區分jdk和jre的區別,實際上這兩個東西差別很大的,有必要了解一下:
·SDK(Software Development Kit)一般指軟體開發包,可以包括函數庫、編譯程序等。
·JDK(Java Development Kit)是面向JAVA開發人員使用的SDK,它提供了Java的開發環境和運行環境。
·JRE(Java Runtime Enviroment)是指Java的運行環境,是面向Java程序的使用者,而不是開發者。
如果安裝了JDK,會發現你的電腦有兩套JRE,一套位於j2sdk\jre, 另外一套位於 C:\Program Files\Java\j2re1.4.1_01目錄下,後面這套比前面那套少了Server端的Java虛擬機,不過直接將前面那套的Server端Java虛擬機復制過來就行了。
而且在安裝JDK時可以選擇是否安裝這個位於 C:\Program Files\Java 目錄下的JRE。如果你只安裝JRE,而不是JDK,那麼只會在 C:\Program Files\Java 目錄下安裝唯一的一套JRE(供瀏覽器來使用)。
JRE的地位就象一台PC機一樣,我們寫好的Win32應用程序需要操作系統幫我們運行,同樣的,我們編寫的Java程序也必須要JRE才能運行。所以當你裝完JDK後,如果分別在硬碟上的兩個不同地方安裝了兩套JRE,那麼你可以想像你的電腦有兩台虛擬的Java PC機,都具有運行Java程序的功能。所以我們可以說,只要你的電腦安裝了JRE,就可以正確運行Jav a應用程序。
1、為什麼Sun要讓JDK安裝兩套相同的JRE?這是因為JDK裡面有很多用Java所編寫的開發工具(如javac.exe、jar.exe等),而且都放置在 \lib\tools.jar 里。從下面例子可以看出,先將tools.jar改名為tools1.jar,然後運行javac.exe,顯示如下結果: Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/javac /Main 這個意思是說,你輸入javac.exe與輸入 java -cp c:\jdk\lib\tools.jar com.sun.tools.javac.Main 是一樣的,會得到相同的結果。從這里我們可以證明javac.exe只是一個包裝器(Wrapper),而製作的目的是為了讓開發者免於輸入太長的指命。而且可以發現\lib目錄下的程序都很小,不大於2 9K,從這里我們可以得出一個結論。就是JDK里的工具幾乎是用Java所編寫,所以也是Java應用程序,因此要使用JDK所附的工具來開發Java程序,也必須要自行附一套JRE才行,所以位於C:\Program Files\Java目錄下的那套JRE就是用來運行一般Java程序用的。
2、如果一台電腦安裝兩套以上的JRE,誰來決定呢?這個重大任務就落在java.exe身上。Java.exe的工作就是找到合適的JRE來運行Java程序。 Java.exe依照底下的順序來查找JRE:自己的目錄下有沒有JRE;父目錄有沒有JRE;查詢注冊表: [HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment] 所以java.exe的運行結果與你的電腦裡面哪個JRE被執行有很大的關系。
3、介紹JVM JRE目錄下的Bin目錄有兩個目錄:server與client。這就是真正的jvm.dll所在。 jvm.dll無法單獨工作,當jvm.dll啟動後,會使用explicit的方法(就是使用Win32 API之中的LoadLibrary()與GetProcAddress()來載入輔助用的動態鏈接庫),而這些輔助用的動態鏈接庫(.dll)都必須位於jvm.dll所在目錄的父目錄之中。因此想使用哪個JVM,只需要設置PATH,指向JRE所在目錄底下的jvm.dll。
也可以參考下面的介紹:
轉自: http://www.javanb.com/java/1/17269.html
Java語言的發展經歷
(1)Sun的Java語言開發小組成立於1991年,其目的是開拓消費類電子產品市場,例如,互動式電視、烤麵包箱等。
(2)開始寫Java時,並不局限於擴充語言機制本身,更注重於語言所運行的軟硬體環境。他要建立一個系統,這個系統運行於一個巨大的、分布的、異構的網格環境中,完成各電子設備之間的通信與協同工作。設計中採用了虛機器碼(Virtual Machine Code)方式
(3)中性瀏覽器HotJava的誕生。不依賴於任何硬體平台和軟體平台,它應是一種實時性較高、可靠安全、有交互功能的瀏覽器。
(4)在以網路為中心的計算時代,不支持HTML和Java,就意味著應用程序的應用范圍只能限於同質的環境。
(5)未來的計算方式,每個HomePage的實質是一個多媒體應用程序,這些程序用Java來開發。Java應用程序運行在異質的機器、異質的操作系統之上,甚至於電冰箱、烤麵包箱、防盜電子設備之中, 用Internet把所有的電子設備連接起來,通過TCP/IP進行信息的交流。未來可能進行代理(Agent)交換,代理有一定的智能性,那便是信息交換的更高級階段。
Java工業
(1)Java Card
(2)Embedded System
(3)Java Applet
(4)Java Application
(5)Java OS
Java平台技術
Java不僅僅是一種語言,更重要是一種區別於傳統系統,遵循"網路就是計算機"信條的平台技術。Java平台將面向對象系統擴展成包括程序和數據的網路計算機(NC),而這個平台的核心就是Java虛擬機,許多使Java成為萬能開發平台的屬性都源於Java虛擬機的概念和實現。以下是如乾重要概念:
(1)Java虛擬機:從底層看,Java虛擬機就是以Java位元組碼為指令組的軟CPU。
(2)位元組碼:位元組碼是Java虛擬機的指令組(很象CPU上的微碼)。
(3)即用即裝入:一個.class文件可以引用許多其它.class文件(在Java語言中,通過import, implement或extends語句實現),當運行的類需要其他類時,Java虛擬機即從網路或本地文件系統裝入.class文件。
(4)Java認證器:認證器包括四個階段的操作:類文件認證、類型系統認證、位元組碼認證和運行時類型與訪問檢查。此外,認證器在檢查期間還能識別演算法操作的上溢和下溢等其他可能發生在運行期間的程序錯誤。
(5)Java效率和(Just-In-Time)JIT及時編譯技術:JIT編譯器在程序開始執行前把所有位元組碼翻譯成本地機器碼,然後再將翻譯後的機器碼放在CPU上運行。
Java可移植特性
(1)JAVA作為一種編程語言:源代碼可移植性
(2)JAVA作為一個虛擬機:硬體平台可移植性
(3)JAVA作為一種虛擬的操作系統(OS)和圖形用戶界面(GUI):操作系統移植性
Java語言特性
(1)面向對象:無全局變數或函數
(2)分布式:Java包括一個支持HTTP和FTP等基於TCP/IP協議的子庫。因此,Java應用程序可憑借URL打開並訪問網路上的對象,象本地一樣。
(3)取消了C語言的:結構,指針,#define語句,多重繼承,全局變數和函數,GOTO語句 ,操作符重載,自動類型轉換等等
(4)安全健壯:例如,邊界檢查,類型檢查,位元組碼認證,自動的指針和內存管理 (5)結構中立:為了建立Java作為網路的一個整體
(6)垃圾收集器:虛擬機自動啟動的一個線程來完成不用內存的回收,免去delete.
Java開發工具 (1)JDK:Java開發工具包 (2)Symantec café:第一個推出具有完全特性的集成開發環境的公司是Symantec。
(3)Java Workshop:Sun公司1996年中推出的全部用Java實現的集成開發環境。
(4)Visual J++:微軟推出的Visual Stutio組建之一
(5)Jbuilder:Borland公司推出的Windows和linux平台的開發環境。
B. 介紹J2EE、J2SE、J2SE的區別。
j2ee和j2se的區別:
1)J2EE是Java2enterprise edition,是Java的一種企業版,用於企業級的應用服務開發。
J2EE是在J2SE的基礎上添加了一系列的企業級應用編程介面,J2EE包含有很多的技術,其中有jsp,servlet,jdbc,jme等13種技術。J2EE主要是用來做B/S結構的應用程序,也就是說是基於瀏覽器和伺服器的。
2)J2SE是Java2standard edition,是Java的標准版,用於標準的應用開發。
Java(計算機編程語言):是一種可以撰寫跨平台應用程序的面向對象的程序設計語言。Java 技術具有卓越的通用性、高效性、平台移植性和安全性,廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
C. java開發環境是不是DW
java開發環境是不是DW。學習java開發推薦千鋒教育,多年來深耕java開發教育,深得學子信賴。
DW里的不是JAVA,而是叫做javascript,javascript是伺服器用來解析的腳本文件。JAVA跟javascript是兩種不一樣的東西,JAVA是系統編程語言,JAVASCRIPT是計算機編程語言,也就是腳本語言。JAVA的開發環境有很多,比較常用的是netbeans, eclipse。
想要了解更多關於java開發的相關信息,推薦咨詢千鋒教育。千鋒教育成立教研學科中心,推出貼近企業需求的線下技能培訓課程。課程包含HTML5大前端培訓、JavaEE+分布式開發培訓、Python人工智慧+數據分析培訓、全鏈路UI/UE設計培訓、雲計算培訓、全棧軟體測試培訓、大數據+人工智慧培訓、智能物聯網+嵌入式培訓、Unity游戲開發培訓、網路安全培訓、區塊鏈培訓、影視剪輯包裝培訓、游戲原畫培訓、全媒體運營培訓。
D. 如何安裝java環境 百度經驗
右鍵打開我的電腦復->屬性制->高級->環境變數
2.新建系統變數JAVA_HOME和CLASSPATH
變數名(N):JAVA_HOME
變數值(V):C:Program FilesJavajdk1.7.0(這里的地址是根據你自己javaJDK的保存目錄而定的)
變數名(N):CLASSPATH
變數值(V):.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar;(java_home你就把它看成替換上面設置的java_home變數值就行)注意前面的 .;別丟了
3.選擇「系統變數」中變數名為「Path」的環境變數,雙擊該變數,把jdk安裝路徑中bin目錄的絕對路徑,添加到Path變數的值中,並使用半形英文的分號和已有的路徑進行分隔。
變數名(N):Path
變數值(V):%JAVA_HOME%in;%JAVA_HOME%jrein;
如果還不行請貼出你的jdk安裝目錄,其他配置路徑我來幫你寫。
E. java,公司有三種開發環境,分別為開發,測試,UAT,請問具體的區別體現在代碼的哪裡
一般指的開發環境,測試環境,UAT環境;顧名思義:跟環境有關系,代碼只是配置的環境地址和參數不同。
F. 一個java項目中的軟體環境、硬體環境、開發工具具體指的什麼啊
軟體環境:一般包括資料庫(mysql、sqlserver),運行的中間件,即應用伺服器,如tomcat、weblogic、webphere,以及運行的操作系統環境,如windows,unix(AIX,solaris),各版本的linux等,但是java是運行在java虛擬機即jvm上的,操作系統的影響不大。
硬體環境:一般是項目運行在的硬體素質(伺服器)。如pc server,ibm、hp的小型機等等。
開發工具:有ibm開源的eclipse及衍生的myeclipse,sun的netbeans、或者收費的好用的IntelliJ IDEA等等。
(6)javacard開發環境擴展閱讀:
java的編程環境:
JDK(Java Development Kit)稱為Java開發包或Java開發工具,是一個編寫Java的Applet小程序和應用程序的程序開發環境。JDK是整個Java的核心,包括了Java運行環境(Java Runtime Envirnment),一些Java工具和Java的核心類庫(Java API)。不論什麼Java應用伺服器實質都是內置了某個版本的JDK。主流的JDK是Sun公司發布的JDK,除了Sun之外,還有很多公司和組織都開發了自己的JDK,例如,IBM公司開發的JDK,BEA公司的Jrocket,還有GNU組織開發的JDK。
另外,可以把Java API類庫中的Java SE API子集和Java虛擬機這兩部分統稱為JRE(JAVA Runtime Environment),JRE是支持Java程序運行的標准環境。
JRE是個運行環境,JDK是個開發環境。因此寫Java程序的時候需要JDK,而運行Java程序的時候就需要JRE。而JDK裡面已經包含了JRE,因此只要安裝了JDK,就可以編輯Java程序,也可以正常運行Java程序。但由於JDK包含了許多與運行無關的內容,佔用的空間較大,因此運行普通的Java程序無須安裝JDK,而只需要安裝JRE即可。
G. 用java做程序的軟體環境、硬體環境和開發環境怎麼寫啊簡歷上要求寫的。
軟體環境:jdk1.5 + tomcat6 + mysql
硬體環境:小機(伺服器)
開發環境:myeclipse + tomcat6 + mysql + jdk1.5
H. java智能卡是什麼卡,與cpu卡、准cpu卡,以及和我們經常說的智能卡有什麼區別
Java Card API的產生與發展
1996年10月29日,Sun公司宣布完成了Java Card API(Java卡應用程序介面)的規范化工
作。1997年7月,Sun 又推出Java Card API的更新版本。
Java Card API是一個規范化的Java語言大型應用程序介面,它充分利用了智能卡技術使
電子商業、網路存取、分布式程序、游戲程序以及認證等網路功能的實現成為可能。
JavaSoft公司的總裁Alan Baratz對此評價說:"Java卡應用程序不僅可以在任何智能卡
上運行,而且Java程序員還能運用相同的工具開發針對智能卡、頁面管理程序、網路計算機
、個人計算機及容錯伺服器的大型應用程序。"Java Card API為智能卡開發人員提供關鍵的
Java功能,它是一個工業標准語言,並為智能卡開放了應用程序介面,允許大型應用程序運行
在所有符合ISO7816標準的智能卡上。Java語言的可擴展性以及平台的獨立性為生成智能卡
大型應用程序提供了一個理想的環境。到目前為止,智能卡操作人員還一直在編寫不具有互
操作性及可移植性的專用應用程序,Java的引入將會改變這一格局。智能卡開發人員可以利
用日益增多的Java開發工具,通過Java Card API編譯大型應用程序。JavaSoft公司正在與智
能卡工業的主要公司合作開發一種易於使用的工具,使這些大型應用程序能夠在智能卡環境
中運行。