當前位置:首頁 » 編程軟體 » 位元組跳動java需要什麼編譯器

位元組跳動java需要什麼編譯器

發布時間: 2022-12-10 06:15:13

『壹』 一般開發安卓軟體用的java語言嗎 需要使用哪種編譯

Android是用java開發的,需要專門的與Android版本配套的IDE來開發。

『貳』 位元組跳動是用的go還是java

go
所以選擇程序語言的目的就是使總成本最小化。可以根據不同應用的特點,選擇語言。

『叄』 Java開發工具哪個好

幾個自己以及身邊同事常用的,根據自己的需求選擇`
1. SparkJava
這是一款體形輕巧,功能強大的Web應用框架。Spark擁有簡單而直接的方法。您可以通過一些繁瑣的XML配置來使用Spark框架編寫應用程序。Spark能讓你花費最少的精力來開發Java的Web應用程序。
2. jClarity
jClarity是兩款產品的結合:illuminate用於性能監控,而census則可以收集日誌和分析數據。jClarity支持雲集成,並且其框架緊湊輕巧。
3.Clover
Clover是用於代碼覆蓋的一大利器。該工具有助於用於應用程序測試的代碼。我們可以在IDE或持續集成系統中運行Clover。該工具能讓測試的運行速度更快。
4. JProfiler
JProfiler擁有直觀的用戶界面,可以幫助你解決性能瓶頸和理解問題。JProfiler能讓你輕松約束內存泄漏和修復線程的問題。
5. VisualVM
VisualVM是一個集多功能於一身的Java故障排除工具。你可以使用VisualVM整合多命令行JDK工具。此輕便的工具有著驚人的分析能
力。你可以在各種技術,如jvmstat、JMX和Serviceability
Agent(SA)中使用VisualVM。VisualVM最出名的是附加了API,以獲得更多的數據,以及自動使用更快捷。
6. Elasticsearch
Elasticsearch提供了可以整合現有的應用程序來驅動其與輸入數據的交互的工具。這款開源工具提供了實時搜索和分析引擎。Elasticsearch可用於可靠性和可擴展性作為重要因素的分布式環境。該工具提供了超簡單的全文搜索體驗。
7. Sonarqube
Sonarqube是一個用來管理代碼質量的開放式平台。基於Web的應用程序可以與Java應用程序進行配置。它提供了規則、警報、閾值、排除和設置功能。
SonarQube允許用戶將指標結合在一起,以及使用歷史的措施混合。
8. Takipi
Takipi是一個輕量級的Java代理。Takipi安裝方便,用不了幾分鍾就可以搞定。它對代碼注釋或配置並沒有要求。你可以使用一台具有完全功能的伺服器與Takipi工作。此款
Java工具能幫助你減少調試時間。

『肆』 如何用maven將java8寫的代碼編譯為java6平台的

在一般的Java應用開發過程中,開發人員使用Java的方式比較簡單。打開慣用的IDE,編寫Java源代碼,再利用IDE提供的功能直接運行Java 程序就可以了。這種開發模式背後的過程是:開發人員編寫的是Java源代碼文件(.java),IDE會負責調用Java的編譯器把Java源代碼編譯成平台無關的位元組代碼(byte code),以類文件的形式保存在磁碟上(.class)。Java虛擬機(JVM)會負責把Java位元組代碼載入並執行。Java通過這種方式來實現其「編寫一次,到處運行(Write once, run anywhere)」 的目標。Java類文件中包含的位元組代碼可以被不同平台上的JVM所使用。Java位元組代碼不僅可以以文件形式存在於磁碟上,也可以通過網路方式來下載,還可以只存在於內存中。JVM中的類載入器會負責從包含位元組代碼的位元組數組(byte[])中定義出Java類。在某些情況下,可能會需要動態的生成 Java位元組代碼,或是對已有的Java位元組代碼進行修改。這個時候就需要用到本文中將要介紹的相關技術。首先介紹一下如何動態編譯Java源文件。
動態編譯Java源文件
在一般情況下,開發人員都是在程序運行之前就編寫完成了全部的Java源代碼並且成功編譯。對有些應用來說,Java源代碼的內容在運行時刻才能確定。這個時候就需要動態編譯源代碼來生成Java位元組代碼,再由JVM來載入執行。典型的場景是很多演算法競賽的在線評測系統(如PKU JudgeOnline),允許用戶上傳Java代碼,由系統在後台編譯、運行並進行判定。在動態編譯Java源文件時,使用的做法是直接在程序中調用Java編譯器。
JSR 199引入了Java編譯器API。如果使用JDK 6的話,可以通過此API來動態編譯Java代碼。比如下面的代碼用來動態編譯最簡單的Hello World類。該Java類的代碼是保存在一個字元串中的。
01 public class CompilerTest {
02 public static void main(String[] args) throws Exception {
03 String source = "public class Main { public static void main(String[] args) {System.out.println(\"Hello World!\");} }";
04 JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
05 StandardJavaFileManager fileManager = compiler.getStandardFileManager(null, null, null);
06 StringSourceJavaObject sourceObject = newCompilerTest.StringSourceJavaObject("Main", source);
07 Iterable< extends JavaFileObject> fileObjects = Arrays.asList(sourceObject);
08 CompilationTask task = compiler.getTask(null, fileManager, null,null, null, fileObjects);
09 boolean result = task.call();
10 if (result) {
11 System.out.println("編譯成功。");
12 }
13 }
14
15 static class StringSourceJavaObject extends SimpleJavaFileObject {
16
17 private String content = null;
18 public StringSourceJavaObject(String name, String content) ??throwsURISyntaxException {
19 super(URI.create("string:///" + name.replace('.','/') + Kind.SOURCE.extension), Kind.SOURCE);
20 this.content = content;
21 }
22
23 public CharSequence getCharContent(boolean ignoreEncodingErrors) ??throws IOException {
24 return content;
25 }
26 }
27 }
如果不能使用JDK 6提供的Java編譯器API的話,可以使用JDK中的工具類com.sun.tools.javac.Main,不過該工具類只能編譯存放在磁碟上的文件,類似於直接使用javac命令。
另外一個可用的工具是Eclipse JDT Core提供的編譯器。這是Eclipse Java開發環境使用的增量式Java編譯器,支持運行和調試有錯誤的代碼。該編譯器也可以單獨使用。Play框架在內部使用了JDT的編譯器來動態編譯Java源代碼。在開發模式下,Play框架會定期掃描項目中的Java源代碼文件,一旦發現有修改,會自動編譯 Java源代碼。因此在修改代碼之後,刷新頁面就可以看到變化。使用這些動態編譯的方式的時候,需要確保JDK中的tools.jar在應用的 CLASSPATH中。
下面介紹一個例子,是關於如何在Java裡面做四則運算,比如求出來(3+4)*7-10的值。一般的做法是分析輸入的運算表達式,自己來模擬計算過程。考慮到括弧的存在和運算符的優先順序等問題,這樣的計算過程會比較復雜,而且容易出錯。另外一種做法是可以用JSR 223引入的腳本語言支持,直接把輸入的表達式當做JavaScript或是JavaFX腳本來執行,得到結果。下面的代碼使用的做法是動態生成Java源代碼並編譯,接著載入Java類來執行並獲取結果。這種做法完全使用Java來實現。
01 private static double calculate(String expr) throws CalculationException {
02 String className = "CalculatorMain";
03 String methodName = "calculate";
04 String source = "public class " + className
05 + " { public static double " + methodName + "() { return " + expr +"; } }";
06 //省略動態編譯Java源代碼的相關代碼,參見上一節
07 boolean result = task.call();
08 if (result) {
09 ClassLoader loader = Calculator.class.getClassLoader();
10 try {
11 Class<?> clazz = loader.loadClass(className);
12 Method method = clazz.getMethod(methodName, new Class<?>[] {});
13 Object value = method.invoke(null, new Object[] {});
14 return (Double) value;
15 } catch (Exception e) {
16 throw new CalculationException("內部錯誤。");
17 }
18 } else {
19 throw new CalculationException("錯誤的表達式。");
20 }
21 }
上面的代碼給出了使用動態生成的Java位元組代碼的基本模式,即通過類載入器來載入位元組代碼,創建Java類的對象的實例,再通過Java反射API來調用對象中的方法。
Java位元組代碼增強
Java 位元組代碼增強指的是在Java位元組代碼生成之後,對其進行修改,增強其功能。這種做法相當於對應用程序的二進制文件進行修改。在很多Java框架中都可以見到這種實現方式。Java位元組代碼增強通常與Java源文件中的註解(annotation)一塊使用。註解在Java源代碼中聲明了需要增強的行為及相關的元數據,由框架在運行時刻完成對位元組代碼的增強。Java位元組代碼增強應用的場景比較多,一般都集中在減少冗餘代碼和對開發人員屏蔽底層的實現細節上。用過JavaBeans的人可能對其中那些必須添加的getter/setter方法感到很繁瑣,並且難以維護。而通過位元組代碼增強,開發人員只需要聲明Bean中的屬性即可,getter/setter方法可以通過修改位元組代碼來自動添加。用過JPA的人,在調試程序的時候,會發現實體類中被添加了一些額外的 域和方法。這些域和方法是在運行時刻由JPA的實現動態添加的。位元組代碼增強在面向方面編程(AOP)的一些實現中也有使用。

『伍』 java jdk與編譯器有什麼關系

我來說說我的理解吧,你的這種問題一般沒有什麼明確的回答。
java:java是一種編程語言,比如說我用java開發這個項目,普遍的意思就是說用符合java語言的語法的代碼,用java版的編譯器,用的庫是java的庫,不是其他語言的庫。等等,是一個很廣泛的概念。
而jdk:全稱叫做java 開發包,就是說一般java開發的時候所需要的工具,舉個例子,你運行一個java程序的時候,需要 用到編譯器嗎?不需要,但是你開發java應用程序的時候,需要用到編譯器嗎?需要!所以jdk,只要是滿足java開發所需要的東西,都屬於jdk一部分。
而編譯器:編譯器有很多種,一般來說,是將源代碼經過一系列復雜處理,轉換成一定環境的目標文件,為啥說是目標文件而不是說位元組碼文件呢,主要是為了說的更加准確一點,當然,有些時候稱為可執行文件。具體內容,可以參考《程序員的自我修養》。
一般來說,java編譯器屬於jdk一部分,而jdk不一定屬於java語言的一部分,為啥呢?因為jdk包含很多東西,這些東西嚴格來說是屬於C語言或者是C++的一部分。

『陸』 Java開發工具主要有哪些

一 看書已經是一種落後的學習方式

我上大學的時候學習Java,也是通過看書的方式學習的,當時學的很費勁,只有死板的文字,整了一本厚厚的書,啃了將近一年,也是迷迷瞪瞪的,有長進,但不是太大。在書里涉及到一些實際操作的步驟的時候,通過軟體表現,中間會遇到很多書里沒說的問題,讓人只能糾結。

二 與其看死板的書,不如看網上直播Java課程

現在我是一件公司的Java技術總監,技術實力那是一級棒的。在大學里,看了兩三年的書,沒什麼長進,差點放棄了Java,但是放棄的話總覺的太可惜了,只能回鍋在學習一些,但是當時面臨的問題是什麼呢,白天要工作,要創造利潤生活啊,又不好意思跟家裡要錢,所以導致我沒時間去提升自己的技術實力,只能每天混日子。後來我一個朋友讓我在網上看Java直播課程,每天晚上都是高手分享的,可以現場互動,我抱著試試看看的態度,在網上聽了幾天,都是晚上講課,也不耽誤我白天工作,讓我欣喜的是,當在直播中看著老師的實戰操作以及老師透徹的講解,讓我有一直茅塞頓開的感覺,很多困擾我很多年的問題,都解開了,原來看直播的學習效率,直接秒殺看書啊。當然好東西,要給大家一塊分享,如果你想提升自己的Java實力,晚上有時間也可以來聽聽的,在這個群里,開頭的前面幾位是:557,然後在中間的一組是:101,位於最後位置的是:916,按照前後的順序組合起來就ok了。



三 Java程序員新手老手都離不開八大開發工具


現在有很多庫、實用工具和程序任Java開發人員選擇。每個工具都有其優點,但其中有一些因它的知名度、多功能和有效力從眾多選項中脫穎而出。

以下這8個工具,從代碼構建到錯誤擠壓,覆蓋Java開發的全域。學習這些工具可以幫助你改善代碼質量,成為一個更高效的Java開發人員。


1.Eclipse

盡管IntelliJ IDEA、NetBeans和一些其他的IDE正在日益普及,但是有調查表明,Eclipse仍然是幾乎半數Java開發人員首選的開發環境。 Eclipse是IDE領域的瑞士軍刀,有著大量定製的介面和無數的插件。它無處不在,後面本文將推薦的其他所有工具都提供Eclipse插件。

Eclipse的工作流程可分為三個方面:工作台,工作空間和視角。工作台作為到IDE的出發點。工作空間將項目、文件和配置設置組合在一個單獨的 目錄下。視角定義工具、視圖和有效設置。雖然新手開發人員可能會覺得相比Netbeans和IntelliJ IDEA,Eclipse使用起來更難,但Eclipse的靈活,使其成為企業開發的首選IDE。

Luna,Eclipse的最新版本,支持Java 8、分屏編輯、新的黑色主題,以及一個功能齊全的命令行終端。


2.Gradle


Gradle是一個自動化項目工具,建立在Apache Maven和Apache Ant的功能上。雖然Gradle並不是非常流行的構建工具(超流行的是Maven,64%的Java開發人員會選擇它),但它的普及速度很快。它也可作為默認的Android構建工具。

Gradle引以為傲的是它的簡單。Gradle使用Groovy編程語言,與Maven和Ant使用XML語法截然相反。一個基本的Gradle構建文件由一行簡單的代碼組成:


3.Javadoc

Javadoc是Oracle提供的文檔生成器。它可以將特殊格式的注釋解析為HTML文檔。以下截圖就是Javadoc生成的Java SE 8 API規范:

Javadoc注釋使用開放標簽、關閉標簽,以及一個或多個描述性標簽的格式。開放式標簽類似於標准Java多行注釋標記,使用兩個星號的除外。Javadoc也解析普通的HTML標簽。

Javadoc自動格式化標簽和關鍵字,除非另有規定。Javadoc廣泛使用超鏈接,允許你參考和鏈接到代碼的不同區域。許多IDE——包括 Eclipse——可以自動添加Javadoc注釋模塊到變數、類和方法中。支持Maven、Gradle和Ant的插件在編譯代碼的同時也可以構建 Javadoc HTML。


4.JUnit


JUnit是用於編寫和運行單元測試的開源框架。一個基本的JUnit測試包括測試類、測試方法、以及執行測試的功能。 JUnit使用標注來確定測試如何構造和運行。例如,如果你的程序有一個類叫做MathClass,具有乘法和除法的方法,你可以創建JUnit測試來檢 查不符合預期的值。輸入數字2和5到乘法方法,你希望得到的結果為10。當輸入0作為除法方法的第二個參數時,你會期望給出一個數字計算異常的警告因為除 數不能為0:

@Test標注規定,MathClass方法是一個測試用例。 在JUnit提供額外的標注,比如@Before,這樣你就可以在測試運行之前設置環境。 JUnit還可以設置規則用於定義測試方法的行為。例如,TemporaryFolder規則使得一旦測試完成,由測試創建的文件或文件夾就會被刪除。


5.Cobertura

Cobertura可用於分析Java代碼的測試覆蓋率。Cobertura根據沒有被測試覆蓋的代碼生成基於HTML的報告。

Cobertura提供可用於插裝、檢查和測試代碼的工具。通過監控可測試的代碼,Cobertura允許你使用你選擇的測試框架,甚至不需要測試框架就可以運行程序。

Cobertura根據行、分支和程序包三個方面給出代碼覆蓋報告。每個類別都有一個可自定義的閾值,如果覆蓋面低於閾值,就會觸發警告。Cobertura還集成了Maven和Gradle的自動檢測功能。


6.FindBugs

FindBugs是一個匹配編譯代碼模式,而非使用bug資料庫的工具。當提供源代碼時,FindBugs還可高亮顯示檢測出bug的代碼行。

在它的3.0.1版本中,FindBugs繼續保持著數以百計的bug描述。根據bug的嚴重程度,FindBugs將bug分為四個水平:相關 的,令人困擾的,可怕的,以及最可怕的。除了圖形用戶界面,FindBugs還提供一個命令行界面,Ant任務,以及Eclipse插件。


7.VisualVM

包含在JDK中的VisualVM是監控和審查Java應用程序性能的工具。 VisualVM檢測並重視活躍的JVM實例來檢索有關進程的診斷信息。

VisualVM可以很容易地實時診斷性能問題。它提供了全套的分析工具,包括JConsole、jstack、jmap、jinfo和jstat等。此外,你還可以對JVM做一個快照,這樣以後在任何時都能審查。


8.Groovy

Groovy是一種編程語言,通過添加新的關鍵字,自動導入常用的類,以及可選類型變數聲明,既簡化又擴展了Java。

Groovy的核心優勢之一是它的腳本功能。類可以被編譯為Java位元組碼或使用Groovy Shell動態執行。Groovy的Java基礎使得它相較於Jython和JRuby更容易為Java開發人員所接受


三優秀Java程序員,應該養成哪些習慣

當我們評價一個程序員是否優秀時,要從多個方面進行評估。 專業技能、專業知識、創造力、經驗,這些都是重要的因素。當然,還有他們的工作態度、工作效率和工作質量。如果程序員的工作是沒有效率的,那就意味著他們所投入的時間和精力是沒有效果的。最近看到一篇博文中,他們總結了10個影響程序員工作效率的壞習慣。看完這篇文章後你會發現,裡面所列舉的壞習慣,總有一兩個可以在自己的身上找得到。從中你也可以學習到那些優秀的程序員是如何提高工作效率的。

1.專注於一個工作而不是同時處理多個任務同一時間處理多個工作任務,我們對這種情況並不陌生。有時候是迫不得已,但有時候也是個人的習慣造成的。「同一時間處理多個任務」看起來不錯,給人感覺你的工作出色,但實際上,由於要不斷轉換工作內容,它會影響了你的專注力和創造力。對於程序員來說,專注於某一個開發工作是很重要的。如果要同時處理幾個任務,你不得不為此消耗精力,這樣一來工作效率就會降低了。解決的方法是做好工作安排,把相似的工作放在一起,專心做好一個工作直到它完成了為止,再去做下一個工作。

2.建立一個有條理的工作系統程序員給很多人的感覺是有點神經質的,就是那種專注起來令人傾心,糊塗起來讓人抓狂的那種。他們可以投入到開發環境中不眠不休,但有很多人也會在工作中出現各種馬虎,健忘和凌亂的狀況。工作沒有條理可以直接影響工作效率。其實這個毛病是可以改掉的,從辦公桌上物件的擺放,到建立工作計劃,一步一步地作好安排,制定一個井井有條的工作系統可以有助提高工作效率。你可以在livecoding上看一下其他程序員的直播,不僅可以發現一些有趣的項目,還可以留意一下人家是如何把每一件事情都處理得有條不紊的。優秀的程序員也許在生活中會有各種丟三拉四的表現,但一旦投入到工作中時,他們會變得非常專注和注重條理。

『柒』 要編譯運行java程序需要安裝什麼

如果你需要運行java程序,只需安裝JRE就可以了。如果你需要編寫java程序,需要安裝JDK。
先裝JDK,把環境搭好再來個IDE基本上就可以開始寫java代碼了,Jdk ide開發工具 eclipse Idea
要是做web的話把tomcat,mysql裝一下就可以開始做簡單web了

JRE: Java Runtime Environment
JDK:Java Development Kit
JRE顧名思義是java運行時環境,包含了java虛擬機,java基礎類庫。是使用java語言編寫的程序運行所需要的軟體環境,是提供給想運行java程序的用戶使用的。
JDK顧名思義是java開發工具包,是程序員使用java語言編寫java程序所需的開發工具包,是提供給程序員使用的。
JDK包含了JRE,同時還包含了編譯java源碼的編譯器javac,還包含了很多java程序調試和分析的工具:jconsole,jvisualvm等工具軟體,還包含了java程序編寫所需的文檔和demo例子程序。

『捌』 昆明Java培訓:學習java需要什麼軟體java編程軟體哪個好

學習java要什麼軟體?java編程軟體哪個好?昆明北大青鳥java培訓小編為你詳細解答!一、JDK(JavaDevelopmentKit)JDK是整個Java的核心,包括了Java運行環境(JavaRuntimeEnvirnment),一堆Java工具和Java基礎的類庫(rt.jar)。
不論什麼Java應用伺服器實質都是內置了某個版本的JDK。
因此掌握JDK是學好Java的第一步。
最主流的JDK是Sun公司發布的JDK,除了Sun之外,還有很多公司和組織都開發了自己的JDK,例如IBM公司開發的JDK,BEA公司的Jrocket,還有GNU組織開發的JDK等等。
其中IBM的JDK包含的JVM(JavaVirtualMachine)運行效率要比SunJDK包含的JVM高出許多。
而專門運行在x86平台的Jrocket在服務端運行效率也要比SunJDK好很多。
但不管怎麼說,我們還是需要先把SunJDK掌握好。
1、JDK的下載和安裝JDK又叫做J2SE(Java2SDKStandardEdition),可以從Sun的Java網站上下載到,#/j2se/downloads.html;,JDK當前最新的版本是J2SDK1.4.2,建議下載該版本的JDK,下載頁面在這里:http://#/j2se/1.4.2/download.html。
下載好的JDK是一個可執行安裝程序,默認安裝完畢後會在C:ProgramFilesJava目錄下安裝一套JRE(供瀏覽器來使用),在C:j2sdk1.4.2下安裝一套JDK(也包括一套JRE)。
然後我們需要在環境變數PATH的最前面增加java的路徑C:j2sdk1.4.2in。
這樣JDK就安裝好了。
2、JDK的命令工具JDK的最重要命令行工具:java:啟動JVM執行classjavac:Java編譯器jar:Java打包工具javadoc:Java文檔生成器這些命令行必須要非常非常熟悉,對於每個參數都要很精通才行。
對於這些命令的學習,JDKDocumentation上有詳細的文檔。
二、JDKDocumentationDocumentation在JDK的下載頁面也有下載連接,建議同時下載Documentation。
Documentation是最最重要的編程手冊,涵蓋了整個Java所有方面的內容的描述。
可以這樣說,學習Java編程,大部分時間都是花在看這個Documentation上面的。
我是隨身攜帶的,寫Java代碼的時候,隨時查看,須臾不離手。
三、應用伺服器(AppServer)AppServer是運行Java企業組件的平台,構成了應用軟體的主要運行環境。
當前主流的AppServer是BEA公司的WeblogicServer和IBM公司的Websphere以及免費的Jboss,選擇其中一個進行學習就可以了,個人推薦Weblogic,因為它的體系結構更加干凈,開發和部署更加方便,是Java企業軟體開發人員首選的開發平台。
下面簡要介紹幾種常用的AppServer:1、TomcatTomcat嚴格意義上並不是一個真正的AppServer,它只是一個可以支持運行Serlvet/JSP的Web容器,不過Tomcat也擴展了一些AppServer的功能,如JNDI,資料庫連接池,用戶事務處理等等。
Tomcat被非常廣泛的應用在中小規模的JavaWeb應用中,因此本文做一點下載、安裝和配置Tomcat的介紹:Tomcat是Apache組織下Jakarta項目下的一個子項目,它的主網站是:#/tomcat/;,Tomcat最新版本是Tomcat4.1.27,軟體下載的連接是:http://#/dist/jakarta/tomcat-4/binaries/;。
下載Tomcat既可以直接下載zip包,也可以下載exe安裝包(個人建議zip更干凈些),不管哪種情況,下載完畢安裝好以後(zip直接解壓縮就可以了)。
需要設置兩個環境變數:JAVA_HOME=C:j2sdk1.4.2CATALINA_HOME=D: omcat4(你的Tomcat安裝目錄)這樣就安裝好了,啟動Tomcat運行CATALINA_HOMEinstartup.bat,關閉Tomcat運行shutdown.bat腳本。
Tomcat啟動以後,默認使用8080埠,因此可以用瀏覽器訪問http://localhost:8080來測試Tomcat是否正常啟動。
Tomcat提供了兩個Web界面的管理工具,URL分別是:http://localhost:8080/admin/index.jsp;http://localhost:8080/manager/html;在啟用這兩個管理工具之前,先需要手工配置一下管理員用戶和口令。
用一個文本工具打開CATALINA_HOMEconf omcat-users.xml這個文件,加入如下幾行:這樣用戶「robbin」就具備了超級管理員許可權。
重新啟動Tomcat以後,你就可以使用該用戶來登陸如上的兩個管理工具,通過Web方式進行Tomcat的配置和管理了。
2、BEAWeblogicWeblogic可以到BEA的網站上免費注冊之後下載到最新的Weblogic8.1企業版,License可以免費使用1年時間,其實這已經完全足夠了。
Weblogic的下載連接:#/index.jsp,Weblogic的在線文檔:http://#/;。
3、IBMWebshpereWebsphere同樣可以下載到免費的試用版本,到IBM的developerWorks網站可以看到Websphere試用產品的下載和相關的Websphere的資料,developerWorks中文網站的連接是:#/developerWorks/cn/wsdd/;,Websphere的下載連接:http://#/wsdd/downloads/WASsupport.html;。
4、JbossJboss是免費開源的AppServer,可以免費的從Jboss網站下載:#/index.html,然而Jboss的文檔是不免費,需要花錢購買,所以為我們學習Jboss設置了一定的障礙。
在Jdon上有幾篇不錯的Jboss配置文檔,可以用來參考:http://#/idea.html;四、Java應用的運行環境Java的應用可以簡單分為以下幾個方面:1、Java的桌面應用桌面應用一般僅僅需要JRE的支持就足夠了。
2、JavaWeb應用Java的Web應用至少需要安裝JDK和一個web容器(例如Tomcat),以及一個多用戶資料庫,Web應用至少分為三層:Browser層:瀏覽器顯示用戶頁面Web層:運行Servlet/JSPDB層:後端資料庫,向Java程序提供數據訪問服務3、Java企業級應用企業級應用比較復雜,可以擴展到n層,最簡單情況會分為4層:Browser層:瀏覽器顯示用戶頁面Client層:Java客戶端圖形程序(或者嵌入式設備的程序)直接和Web層或者EJB層交互Web層:運行Servlet/JSPEJB層:運行EJB,完成業務邏輯運算DB層:後端資料庫,向Java程序提供數據訪問服務4、Java嵌入式應用Java嵌入式應用是一個方興未艾的領域,從事嵌入式開發,需要從Sun下載J2ME開發包,J2ME包含了嵌入式設備專用虛擬機KVM,和普通的JDK中包含的JVM有所不同。
另外還需要到特定的嵌入式廠商那裡下載模擬器。

『玖』 java中eclipse,jdk,jvm,jre,編譯器的區別

JVM就是常說的java虛擬機,它是整個java實現跨平台的 最核心的部分,所有的java程序會首先被編譯為.class的類文件,這種類文件可 以在虛擬機上執行,也就是說class並不直接與機器的操作系統相對應,而是經過虛擬機間接與操作系統交互,由虛擬機將程序解 釋給本地系統執行。

  1. JVM 是 Java 平台的基礎,和實際的機器一樣,它也有自己的指令集,並且在運行 時操作不同的內存區域。 JVM 通過抽象操作系統和 CPU 結構,提供了一種與平台無關的代碼執行方法,即與特殊的實現方 法、主機硬體、主機操作系統無關。但是在一些小的方面, JVM 的實現也是互不相同的,比如垃圾回收 演算法,線程調度演算法(可能不同 OS 有不同的實現)。JVM 的主要工作是解釋自己的指令集(即位元組碼)到 CPU 的指令集或 OS 的系統調用,保護用戶免被惡意程序騷擾。 JVM 對上層的 Java 源文件是不關心的,它關注的只是由源文件生成的類文件( class file )。類文件的 組成包括 JVM 指令集,符號表以及一些補助信息。



JRE是指java運行環境。光有JVM還不能成class的 執行,因為在解釋class的時候JVM需要調用解釋所需要的類庫lib。 在JDK的安裝目 錄里你可以找到jre目錄,裡面有兩個文件夾bin和lib,在 這里可以認為bin里的就是jvm,lib中則是jvm工 作所需要的類庫,而jvm和 lib和起來就稱為jre。所以,在你寫完java程序編譯成.class之後,你可以把這個.class文件 和jre一起打包發給朋友,這樣你的朋友就 可以運行你寫程序了。(jre里有運行.class的java.exe)

  1. JRE 是 Sun 公司發布的一個更大的系統,它裡面就有一個 JVM 。 JRE 就與具體的 CPU 結構和操作系統有關,我們從 Sun 下載 JRE 的時候就看到了不同的各種版本。同 JVM 一起組成 JRE 的還有一些 API (如 awt , swing 等)。 JRE 是運行 Java 程序必不可少的。

  2. JRE ( Java Runtime Environment ),是運行 Java 程序必不可少的(除非用其他一些編譯環境編譯成.exe可執行文件……),JRE的 地位就象一台PC機一樣,我們寫好的Win32應用程序需要操作系統幫 我們運行,同樣的,我們編寫的Java程序也必須要JRE才能運行。

  3. JRE裡面有一個 JVM , JRE 與具體的 CPU 結構和操作系統有關,我們從 Sun 下載 JRE 的時候就看到了不同的各種版本,,同 JVM 一起組成 JRE 的還有 一些 API (如 awt , swing 等), JRE 是 運行 Java 程序必不可少的.

JDK是java開發工具包,基本上每個學java的人都會先在機器 上裝一個JDK,那他都包含哪幾部分呢?讓我們看一下JDK的安裝目錄。在目錄下面有 六個文件夾、一個src類庫源碼壓縮包、和其他幾個聲明文件。其中,真正在運行java時起作用的 是以下四個文件夾:bin、include、lib、 jre。現在可以看出這樣一個關系,JDK包含JRE,而JRE包 含JVM。

    1. bin:最主要的是編譯器(javac.exe)

    2. include:java和JVM交互用的頭文件

    3. lib:類庫

    4. jre:java運行環境

      (注意:這里的bin、lib文件夾和jre里的bin、lib是 不同的)總的來說JDK是用於java程序的開發,而jre則 是只能運行class而沒有編譯的功能,eclipse、idea等 其他IDE有自己的編譯器而不是用JDK bin目錄中自帶的,所以在安裝時你會發現他們只要求選中jre路徑就ok了。

三者聯系:

  1. Java 喊出的帶有標志性的口號「 Write Once , Run Anywhere (一次編寫,到處運行)」,正是建立在 JRE 的基礎之上。何以實現?就是在 Java 應用程序和操作系統之間增加了一虛擬層—— JRE 。

  2. 程序源代碼不是直 接編譯、鏈接成機器代碼,而是先轉化到位元組碼( bytecode ) 這種特殊的中間形式,位元組碼再轉換成機器碼或系統調用。前者是傳統的編譯方法,生成的機器代碼就不可避免地跟特殊的操作系統和特殊的機器結構相關。而 Java 程序的位元組碼文件可以放到任意裝有 JRE 的計算機運行,再由不同 JRE 的將它們轉化成相應的機器代碼,這就實現了 Java 程序的可移植性。這樣程序員也不用去 關心程序運行的具體環境,而可以專心編寫軟體。這種分層抽象、隱藏細節的思想在計算機科學中處處可見,比如機器組織結構的設計、網路協議的實現等。 Pascal 語言的發明者 Niklaus Wirth ,就富有預見性地指出應該有這樣一種可移植的語言,其生成的中間代碼可以在一台假想的機器( a hypothetical machine )上運行。

  3. 而 Java 虛擬機( Java virtual machine 或 JVM )就是這樣的一台機器,它模擬實際處理器的結構,解釋位元組碼。 怎麼一會說是 JRE ,一會兒又成了 JVM ,兩者是否同物不同名? 回答是否定的。

  4. JRE的地位就象一台PC機一樣,我們寫好的Win32應用程序需要操作系統幫 我們運行,同樣的,我們編寫的Java程序也必須要JRE才能運行。

  5. 要運行Applet,在客戶端必須安裝有 JRE,即「運行時」,容易一點理解,就象所謂的「插件」,要開發JAVA應用程序Web應用,就必須在伺服器端安裝相應的 JVM+JDK 了(開發應用 Java web應用 時,客戶端不需要安裝任何的JVM)如果使用JAVA開發應用,就需要安裝 JRE+JDK,就是 J2SE. 。如果在客戶端運行Applet,客戶端瀏覽器必須嵌有JAVA JVM,如果沒有,就需要安裝,即: 在客戶端創建JRE(運行時,包含JVM),而客戶端是不需要做開發的,所以,JDK就沒有必要安裝 了。不同版本的Applet在不同的JVM下可能無法正常運行,而Microsoft JVM只是Sun JVM的「低版本」,微軟在windows xp/2003中乾脆將JVM去掉了.

『拾』 雲南java培訓學校告訴你學習java需要哪些基礎知識

學習java需要哪些基礎知識?java是一個十分優美的語言,其語言具有面向對象,分布式和多線程等高級計算機語言的特點,同時可移植性,安全性等也受到大家的青睞。雲南java培訓http://www.kmbdqn.cn/發現java語言簡單易學,如果你准備進入java軟體開發這個行業的話,就有一下java入門學習的問題需要掌握。


什麼是API,什麼是J2SDK,什麼是JDK,什麼是JVM,什麼是JRE?

API:ApplicationProgrammeInterface→應用程序介面,Java最主要的特點是其面向對象OO→ObjectOriented→面向對象。所以設置了很多基礎應用程序介面(API),你是不是在你設計程序的時候常用import!?那就是引用API的方法。

J2SDK:J2SDK=JDK+JRE,J2SDK(Java2SoftwareDevelopmentKit)→JAVA2軟體開發工具包,包括了Java編譯器和Java虛擬器。

JDK:JavaDevelopmentKit→JAVA開發工具包,有時也可稱之為J2SDK。JDK是整個Java的核心,包括了Java運行環境JRE(JavaRuntimeenvironment),一堆Java工具和Java基礎的類庫。不論什麼Java應用伺服器實質都是內置了某個版本的JDK。因此掌握JDK是學好Java的第一步。

最主流的JDK是Sun公司發布的JDK,除了Sun之外,還有很多公司和組織都開發了自己的JDK,例如IBM公司開發的JDK,BEA公司的Jrocket,還有GNU組織開發的JDK等等。其中IBM的JDK包含的JVM(JavaVirtualMachine)運行效率要比SunJDK包含的JVM高出許多。而專門運行在x86平台的Jrocket在服務端運行效率也要比SunJDK好很多。

JVM:JavaVirtualMachine→Java虛擬器,把Java位元組碼翻譯為計算機CPU能讀懂的語言。Java為了實現平台無關性這個功能,專門設計了一個虛擬器,這樣使得Java的移植性很高。

JRE:JavaRuntimeenvironment→Java運行時環境。是JVM的程序實現。有這個東西,就能運行java程序。


熱點內容
飢荒伺服器搭建視頻 發布:2025-07-04 21:48:38 瀏覽:523
github上傳文件夾 發布:2025-07-04 21:29:22 瀏覽:1003
php課程學習中心 發布:2025-07-04 21:29:16 瀏覽:298
win7加密文件夾如何解密 發布:2025-07-04 21:25:24 瀏覽:555
為啥系統緩存的垃圾多呢 發布:2025-07-04 21:15:45 瀏覽:952
linux路由伺服器 發布:2025-07-04 21:13:57 瀏覽:7
為什麼藍牙配對還要發送密碼呢 發布:2025-07-04 21:12:49 瀏覽:621
伺服器無硬體是什麼意思 發布:2025-07-04 21:01:57 瀏覽:763
存儲伺服器的硬碟如何格式化 發布:2025-07-04 20:59:54 瀏覽:115
聯想伺服器的bmc叫什麼 發布:2025-07-04 20:52:29 瀏覽:818