一、javaEEJavaSEJavaME用的同一個jar包嗎? javaEE JavaSE javaME 用的JDK是同一個,開發j2SE工程的話只要有JDK就可以了,開發J2EE工程和J2ME工程除了需要JDK還要有他們各自的一些jar包協助開發。 jdk-6u5-windows-i586-p.e ...
一、javaEEJavaSEJavaME用的同一個jar包嗎?
javaEE JavaSE javaME 用的JDK是同一個,開發j2SE工程的話只要有JDK就可以了,開發J2EE工程和J2ME工程除了需要JDK還要有他們各自的一些jar包協助開發。
jdk-6u5-windows-i586-p.exe和jdk-6u20-windows-i586-p.exe都是JDK6.0版本,只是這個6.0版本還有很多小的版本,6u20比6u5的版本高一些。
他們只是一種java在不同領域上的應用,都需要用到SE的,SE是基礎,例如EE就是與web有關的開發jar包,servlet等。而ME就是做與嵌入式系統有關的jar包。
* Java SE(Java Platform,Standard Edition)。Java SE 以前稱為 J2SE。它允許開發和部署在桌面、伺服器、嵌入式環境和實時環境中使用的 Java 應用程式。Java SE 包含了支持 Java Web 服務開發的類,併為 Java Platform,Enterprise Edition(Java EE)提供基礎。
* Java EE(Java Platform,Enterprise
Edition)。這個版本以前稱為 J2EE。企業版本幫助開發和部署可移植、健壯、可伸縮且安全的伺服器端 Java 應用程式。Java EE 是在 Java SE 的基礎上構建的,它提供
Web 服務、組件模型、管理和通信 API,可以用來實現企業級的面向服務體繫結構(service-oriented architecture,SOA)和 Web 2.0 應用程式。
* Java ME(Java Platform,Micro
Edition)。這個版本以前稱為 J2ME。Java ME 為在移動設備和嵌入式設備(比如手機、PDA、電視機頂盒和印表機)上運行的應用程式提供一個健壯且靈活的環境。Java ME 包括靈活的用戶界面、健壯的安全模型、許多內置的網路協議以及對可以動態下載的連網和離線應用程式的豐富支持。基於 Java ME 規範的應用程式只需編寫一次,就可以用於許多設備,而且可以利用每個設備的本機功能。
開發環境,推薦Eclipse,NetBeans,這兩個IDE可以掛接對應的插件,進行開發。還有一點,那就是這三個應用,se,標準應用,以學習為主,由於界面,開發成本,速度等問題,很少用來做程式,但不是說,他不能做程式,Eclipse,NetBeans,都是javase寫起來的。Me,移動設備應用,對於一些中高端應用還好了!以前用他做過手機游戲,呵呵呵!EE,企業級解決方案,開發套件全部免費,可控性好,安全性高,乃是當前B2B的規範。再者,這三個應用,都需要虛擬機的支持。
二、Java基礎類庫簡介及lang包介紹
一、常用的基礎類庫:11個jar(Java Archive,Java歸檔)包
作為java語言使用者,我們可以感受到java語言帶來的優勢(平臺無關、面向對象、多線程、高效易擴展等),而且它有很多已經實現的類庫可以供我們直接使用,這些類庫都是以jar包的形式提供的,也可以成為java API,它為編程者實現了各種常用操作的方法,為程式員編寫java程式代碼帶來了許多方便。
作為初學者,我覺得熟練掌握和應用java基礎類庫是很有必要的。因此,總結了一些自己在初學java時的一些基礎類知識點。Java 2標準所提供的主要API如下表所示。
包名 |
內容概述 |
Java.applet |
提供創建applet小程式所需要的類 |
Java.awt |
包含用於創建用戶界面和繪製圖形圖像的所有類 |
Java.io |
提供與輸入輸出相關的類 |
Java.beans |
包含與開發javaBeans相關的類 |
Java.lang |
提供java語言程式設計的基礎類 |
Java.net |
提供實現網路操作相關的類 |
Java.nio |
為輸入輸出提供緩衝區的類 |
Java.text |
提供處理文本、日期、數字和消息的類和介面 |
Java.util |
提供處理日期、時間、隨機數生成等各種使用工具的類 |
Javax.net |
提供用於網路應用程式的類、網路應用擴展類 |
Java.swing |
提供一組與AWT功能相同的純java的組件類 |
關於Javabeans這個包的詳細解釋(用於操作javabean的,可以輸出到xml文件等) : http://blog.csdn.net/lxzo123/article/details/6441189
二、java.lang包
Java.lang包是java語言體系中其他所有類庫的基礎,已經內嵌到java虛擬機中,而且以對象的形式創建好了,所以,我們在使用java.lang包時不需要再使用import將其導入,可以直接使用java.lang包中的所有類以及直接引用某個類中的敞亮、變數和操作方法。
類名 |
功能 |
Boolean |
封裝了boolean類型的值以及一些操作該類型的方法 |
Byte |
封裝了byte類型的值以及一些操作該類型的方法 |
Character |
封裝了char類型的值以及一些操作該類型的方法 |
Double |
封裝了double類型的值以及一些操作該類型的方法 |
Float |
封裝了float類型的值以及一些操作該類型的方法 |
Integer |
封裝了int類型的值以及一些操作該類型的方法 |
Long |
封裝了long類型的值以及一些操作該類型的方法 |
Short |
封裝了short類型的值以及一些操作該類型的方法 |
String |
封裝了與字元串類型相關的操作方法 |
Void |
表示對Java中的void關鍵字的聲明,這個類不可以實例 |
Class |
用於描述正在運行的java應用程式中的類和介面的狀態 |
ClassLoader |
用於載入類的對象 |
Enum |
用於定義枚舉類型 |
Math |
用於實現基本數學運算 |
Number |
抽象類,是基本數據類型類的父類 |
Object |
是所有java類的根類 |
Package |
封裝了有關java包的實現和規範的版本信息 |
Runtime |
Runtime類對象使java應用程式與其運行環境相連接 |
StrictMath |
用於實現基本的數學運算 |
StringBuffer |
用於可變字元串的操作 |
StringBuilder |
創建可變的字元串對象 |
System |
封裝了一些與java虛擬機系統相關的方法 |
Thread |
創建和控制線程 |
ThreadGroup |
創建和控制線程組 |
Throwable |
定義了java中的所有錯誤或者異常的父類 |
Process |
定義一個進程process對象,通過Runtime類中的exec方法啟動該進程對象 |
定義在java.lang包中的主要介面及其相應的功能說明如下表:
介面 |
功能 |
Appendable |
用於追加字元串 |
Cloneable |
用於複製類對象 |
Runnable |
用於實現類對象具有線程功能 |
Comparable |
用於類對象的排序 |
2.Object類說明
Object類是java體系中所有類的父類,即在java語言開發的程式中所創建的類對象都是由object類派生出來的,都實現或者繼承了object類中的方法。
Jar包中封裝了一些常量、變數以及方法,當一個類對象被創建後,可以直接引用對象中的常量和變數,調用對象中的方法時要明確方法的輸入參數,併為方法提供符合參數類型的數據和返回值;還要知道該方法在調用時是否會產生異常,如果方法可能會產生異常,需要使用try-catch語句結構來捕獲和處理異常,或者使用java關鍵字throws將可能產生的異常拋出。
3.Java基本數據類型
Java語言中規定的基本數據類型包括boolean、byte、character、double、float、integer、long、short等8個。通過這些可以聲明基本數據類型的常量、變數。但是因為java是純面向對象的程式設計語言,為了實現面向對象,java.lang中給這些基本數據類型定義了對應的類(封裝了基本數據類型的變數類型、與變數相關的常量及相關的操作方法),這樣就能夠在使用這些基本類型的值或者變數時將其當做對象處理。
在java.lang包中還定義了Number抽象數據類型,專門針對純數字對象的操作,在基本數據類型中針對純數字對象的操作包括整數和浮點類型。由此可知,Number類是整型和浮點類型的直接父類,在number類中定義了適用於不同數據類型純數字的操作方法和抽象方法。
(說明:character類封裝了char類型的數值以及相關的操作方法,其字元全部採用Unicode標準編碼)
4.字元串類String&StringBuffer
在java.lang中還提供了處理字元串的String類,String類用於處理“不可變”的字元串;相對地,還提供了StringBuffer類用於處理“可變”字元串。Stirng類和StringBuffer類都被聲明為final類型,因此不能將其當做父類再被繼承使用了。
(1)String類
String類用於創建字元串對象,其值在創建之後被當做常量,String類裡面還封裝了字元串類型的數值以及相關的操作方法。String類中的所有操作方法都是針對已經創建的String對象而言的,而String對象是通過String類的構造函數創建的。
(2)StringBuffer類
StringBuffer類是字元串緩衝區類,用於創建長度可變的字元串對象,這裡的“長度可變”是指通過某些方法的調用可以改變字元串的長度和內容,比如通過在原字元串的基礎上追加新的字元串序列,或者在原字元串的某個位置上插入新的字元序列等構成新的字元串對象。
StringBuffer類創建字元串對象是基於開闢新的緩衝區實現的,在緩衝區中存放字元串的字元序列,因為緩衝區是有一定容量的,所以當字元串長度改變的之後,如果超過了緩衝區的容量時,即發生緩衝區溢出時,java運行系統會自行擴大StringBuffer對象創建的緩衝區容量,保證了對字元串操作的安全性。
5.Math類
Math類中封裝了各種數據類型的算術操作,即包含了指數、對數、平方根、三角函數等操作。在math類中其所有的常量和方法都被定義為靜態的,因此所有的成員都可以直接被引用。
6.Runtime類
Runtime類中封裝了一些和java虛擬機相關的方法,在java虛擬機啟動每個java應用程式時都會創建一個runtime對象,它會保證java應用程式和其運行環境的連接,runtime對象創建後,在java應用程式中就可以直接調用runtime類中定義的方法(如:獲取當前程式的運行信息、退出程式運行、關閉java虛擬機等操作)。
7.System類
System類封裝了一些和電腦輸入/輸出系統相關的常量,以及與java虛擬機相關的操作方法。Java虛擬機啟動之後就會創建system對象,在java應用程式中無法創建system對象。System類中所有的常量和方法都被定義為靜態的,因此,在java應用程式中可以直接調用system類裡面定義的常量和方法。
8.小結
關於java語言提供的可用類庫有很多,給程式員帶來很多的便捷,在具體使用時需要查看幫助文檔和說明,確定功能。要重點關註的還是某個操作方法的輸入參數、返回值、異常等。