當前位置:首頁 » 編程語言 » javac效率

javac效率

發布時間: 2022-05-16 15:33:01

javac debug=true效率會降低么

如果設置為true,就意味著程序可以接受調試,首先,這對程序的安全性有影響,一般人都能輕松破解,然後,對程序的大小也有影響,會使程序增大。

Ⅱ jsdk是什麼盡量詳細一點好嗎

JDK 是整個Java的核心,包括了Java運行環境(Java Runtime Envirnment),一堆Java工具和Java基礎的類庫(rt.jar)。不論什麼Java應用伺服器實質都是內置了某個版本的JDK。因此掌握 JDK是學好Java的第一步。最主流的JDK是Sun公司發布的JDK,除了Sun之外,還有很多公司和組織都開發了自己的JDK,例如IBM公司開發的JDK,BEA公司的Jrocket,還有GNU組織開發的JDK等等。其中IBM的JDK包含的JVM(Java Virtual Machine)運行效率要比Sun JDK包含的JVM高出許多。而專門運行在x86平台的Jrocket在服務端運行效率也要比Sun JDK好很多。但不管怎麼說,我們還是需要先把Sun JDK掌握好。
JDK(Java Development Kit,Java開發包,Java開發工具)是一個寫Java的applet和應用程序的程序開發環境。它由一個處於操作系統層之上的運行環境還有開發者編譯,調試和運行用Java語言寫的applet和應用程序所需的工具組成。
JDK(Java Development Kit)是Sun Microsystems針對Java開發員的產品。自從Java推出以來,JDK已經成為使用最廣泛的Java SDK(Software development kit)。
JDK包含的基本組件包括:
·javac – 編譯器,將源程序轉成位元組碼
·jar – 打包工具,將相關的類文件打包成一個文件
·javadoc – 文檔生成器,從源碼注釋中提取文檔
·jdb – debugger,查錯工具

Ⅲ JAVA的技術特點是什麼

JAVA的技術特點是什麼?

Java由美國SUN公司(被oracle公司收購)發明於1995年,是目前業界應用最廣泛、使用人數最多的語言,連續多年排名世界第一,可以稱之為「計算機語言界的英語」。

那麼Java這么高的評價它的特點有哪些,下面我來為題主解答:

一、跨平台/可移植性

這是Java的核心優勢。Java在設計時就很注重移植和跨平台性。比如:Java的int永遠都是32位。不像C++可能是16,32,可能是根據編譯器廠商規定的變化。這樣的話程序的移植就會非常麻煩。

Java首先利用文本編輯器編寫 Java源程序,源文件的後綴名為.java;再利用編譯器(javac)將源程序編譯成位元組碼文件,位元組碼文件的後綴名為.class; 最後利用虛擬機(解釋器,java)解釋執行。如下圖所示:

二、安全性

Java適合於網路/分布式環境,為了達到這個目標,在安全性方面投入了很大的精力,使Java可以很容易構建防病毒,防篡改的系統。比如Java取消了強大但又危險的指針。由於指針可進行移動運算,指針可隨便指向一個內存區域,而不管這個區域是否可用,這樣做是危險的。

三、面向對象

面向對象是一種程序設計技術,非常適合大型軟體的設計和開發。由於C++為了照顧大量c語言使用者而兼容了C,使得自身僅僅成為了帶類的C語言,多少影響了其面向對象的徹底性!Java則是完全的面向對象語言。

四、簡單性

Java就是C++語法的簡化版,我們也可以將Java稱之為「C++-」。跟我念「C加加減」,指的就是將C++的一些內容去掉;比如:頭文件,指針運算,結構,聯合,操作符重載,虛基類等等。同時,由於語法基於C語言,因此學習起來完全不費力。

五、高性能

Java最初發展階段,總是被人詬病「性能低」;客觀上,高級語言運行效率總是低於低級語言的,這個無法避免。Java語言本身發展中通過虛擬機的優化提升了幾十倍運行效率。比如,通過JIT(JUST IN TIME)即時編譯技術提高運行效率。 將一些「熱點」位元組碼編譯成本地機器碼,並將結果緩存起來,在需要的時候重新調用。這樣的話,使Java程序的執行效率大大提高,某些代碼甚至接近C++的效率。

因此,Java低性能的短腿,已經被完全解決了。業界發展上,我們也看到很多C++應用轉到Java開發,很多C++程序員轉型為Java程序員。

六、分布式

Java是為Internet的分布式環境設計的,因為它能夠處理TCP/IP協議。事實上,通過URL訪問一個網路資源和訪問本地文件是一樣簡單的。Java還支持遠程方法調用(RMI,Remote Method Invocation),使程序能夠通過網路調用方法。

七、多線程

多線程的使用可以帶來更好的交互響應和實時行為。 Java多線程的簡單性是Java成為主流伺服器端開發語言的主要原因之一。

八、健壯性

Java是一種健壯的語言,吸收了C/C++ 語言的優點,但去掉了其影響程序健壯性的部分(如:指針、內存的申請與釋放等)。Java程序不可能造成計算機崩潰。即使Java程序也可能有錯誤。如果出現某種出乎意料之事,程序也不會崩潰,而是把該異常拋出,再通過異常處理機制加以處理。

以上幾種特性你了解到啦嗎? 記得給個贊!

當然這些還沒完,Java除啦這些特性還有一些其他的特點我也來給你講一講!!

1.java的風格類似C++,從某種意義上講,java是C++的一個變種。但是java摒棄了C、C++中的容易引發錯誤和難以理解的指針,結構,以及內存管理等;

2.java是一種強類型的語言,比C/C++檢查還要嚴格,java區分大小寫字母;

3.java禁止非法訪問內存,因為java沒有指針,內存的申請和釋放;

4.對於不同的操作系統,會有不同的java虛擬機,這也就決定了java的可移植性;

5.java提供了自動垃圾回收機制gc,有效避免了C、C++的內存泄漏問題;

記得給個贊!

Ⅳ 什麼是Java

什麼是JAVA?提問者: nan7913 - 見習魔法師 二級----------------------------Java是SUN公司開發的一種面向對象的新一代網路編程語言,它可以在各種不同的機器、操作系統的網路環境中進行開發,具有解釋型語言(如Basic語言)和編譯型語言(如C語言)的特性。Java摒棄了C 中各種弊大於利的功能和許多很少用到的功能,用Java開發的程序可以在網路上傳輸,並運行於任何客戶機上。特點1、簡單性:Java語言通過提供最基本的方法來完成指定的任務,只需理解一些基本的概念,就可以用它編寫出適合於各種情況的應用程序。Java略去了運算符重載、多重繼承等模糊的概念,並且通過實現自動垃圾收集大大簡化了程序設計者的內存管理工作。另外,Java也適合於在小型機上運行,它的基本解釋器及類的支持只有40KB左右,加上標准類庫和線程的支持也只有215KB左右。庫和線程的支持大概有215KB左右。2、面向對象:Java語言的設計集中於對象及其介面,它提供了簡單的類機制以及動態的介面模型。對象中封裝了它的狀態變數以及相應的方法,實現了模塊化和信息隱藏;而類則提供了一類對象的原型,並且通過繼承機制,子類可以使用父類所提供的方法,實現了代碼的復用。3、分布性:Java是面向網路的語言。通過它提供的類庫可以處理TCP/IP協議,用戶可以通過URL地址在網路上很方便地訪問其它對象。4、可靠性:Java在編譯和運行程序時,都要對可能出現的問題進行檢查,以消除錯誤的產生。它提供自動垃圾收集來進行內存管理,防止程序員在管理內存時容易產生的錯誤。通過集成的面向對象的例外處理機制,在編譯時,Java提示出可能出現但未被處理的例外,幫助程序員正確地進行選擇以防止系統的崩潰。另外,Java在編譯時還可捕獲類型聲明中的許多常見錯誤,防止動態運行時不匹配問題的出現。5、安全性:用於網路、分布環境下的Java必須要防止病毒的入侵。Java不支持指針, 一切對內存的訪問都必須通過對象的實例變數來實現,這樣就防止程序員使用「特洛伊」木馬等欺騙手段訪問對象的私有成員,同時也避免了指針操作中容易產生的錯誤。6、體系結構中立:Java解釋器生成與體系結構無關的位元組碼指令,只要安裝Java運行系統,Java程序就可在任意的處理器上運行。這些位元組碼指令對應於Java虛擬機中的表示,Java解釋器得到位元組碼後,對它進行轉換,使之能夠在不同的平台運行。7、可移植性:與平台無關的特性使Java程序可以方便地被移植到網路上的不同機器。同時,Java的類庫中也實現了與不同平台的介面,使這些類庫可以移植。另外,Java編譯器是由Java語言實現的,Java運行時系統由標准C實現,這使得Java 系統本身也具有可移植性。8、解釋執行:Java解釋器直接對Java位元組碼進行解釋執行。位元組碼本身攜帶了許多編譯時信息,使得連接過程更加簡單。9、高性能:和其它解釋執行的語言如BASIC、TCL不同,Java位元組碼的設計使之能很容易地直接轉換成對應於特定CPU的機器碼,從而得到較高的性能。10、多線程:多線程機制使應用程序能夠並行執行,而且同步機制保證了對共享數據的正確操作。通過使用多線程,程序設計者可以分別用不同的線程完成特定的行為,而不需要採用全局的事件循環機制,這樣就很容易地實現網路上的實時交互行為。11、動態性:Java的設計使它適合於一個不斷發展的環境。在類庫中可以自由地加入新的方法和實例變數而不會影響用戶程序的執行。並且Java通過介面來支持多重繼承,使之比嚴格的類繼承具有更靈活的方式和擴展性。Java語言的特性使它可以最大限度地利用網路。Ap-plet是Java的小應用程序,它是動態、安全、跨平台的網路應用程序。JavaApplet嵌入HTML語言,通過主頁發布到Internet。網路用戶訪問伺服器的Applet時,這些Applet 從網路上進行傳輸,然後在支持Java的瀏覽器中運行。由於Java語言的安全機制,用戶一旦載入Applet,就可以放心地來生成多媒體的用戶界面或完成復雜的計算而不必擔心病毒的入侵。雖然Applet可以和圖像、聲音、動畫等一樣從網路上下載,但它並不同於這些多媒體的文件格式,它可以接收用戶的輸入,動態地進行改變,而不僅僅是動畫的顯示和聲音的播放。Java的開發工具。1、 UltraEditUltraEdit是共享軟體,最新版本是V10.20b。其官方網址是:[url]www.ultraedit.com[/url] 。它是一個功能強大的文本、HTML、程序源代碼編輯器。作為源代碼編輯器,它的默認配置可以對C/C , VB, HTML, Java和 Perl進行語法著色。用它設計Java程序時,可以對Java的關鍵詞進行識別並著色,方便了Java程序設計。它具有完備的復制、粘貼、剪切、查找、替換、格式控制等編輯功能。可以在Advanced菜單的Tool Configuration 菜單項配置好Java的編譯器Javac和解釋器Java,直接編譯運行Java程序。配置Javac:在Command Line里輸入:D:jspj2sdkinJavac %f,這里Javac的路徑要根據JDK的實際安裝路徑來指定,%f是指當前活動文檔的全文件名。在Menu Item Name 里輸入Javac ,讓其顯示在Advanced菜單里,這樣就可以直接執行它進行編譯了。選中Output To List Box和Capture Output ,這樣就可以在源代碼下面的輸出窗口裡看到編譯時的錯誤信息了。配置不帶參數運行的解釋器Java:在Command Line里輸入:D:jspj2sdkinJava %n,在Menu Item Name 里輸入: Java filename,選中Output To List Box和Capture Output ,運行結果顯示在輸出窗口裡。配置帶參數運行的解釋器Java:在Command Line里輸入:d:jspj2sdkinJava %n%modify%,在Menu Item Name 里輸入:Java filename parameter,這樣當執行這個菜單項的時候,會顯示一個要求輸入參數的對話框。2、 EditplusEditPlus也是共享軟體,最新版本是EditPlus 2.12。其官方網址是:[url]www.editplus.com[/url]。EditPlus也是功能很全面的文本、HTML、程序源代碼編輯器。默認的支持HTML、CSS、PHP、ASP、Perl、C/C 、Java、JavaScript和VBScript的語法著色。通過定製語法文件還可以擴展到其他程序語言。可以在Tools菜單的Configure User Tools菜單項配置用戶工具,類似於UltraEdit的配置,配置好Java的編譯器Javac和解釋器Java後,通過EditPlus的菜單可以直接編譯執行Java程序。3、JcreatorJcreator是一個用於Java程序設計的集成開發環境,具有編輯、調試、運行Java程序的功能。官方網址是:[url]www.jcreator.com[/url] 。當前最新版本是Jcreator 3.10,它又分為LE和Pro版本。LE版本功能上受到一些限制,是免費版本。Pro版本功能最全,但這個版本是一個共享軟體。這個軟體比較小巧,對硬體要求不是很高,完全用C 寫的,速度快、效率高。具有語法著色、代碼自動完成、代碼參數提示、工程向導、類向導等功能。第一次啟動時提示設置Java JDK主目錄及JDK JavaDoc目錄,軟體自動設置好類路徑、編譯器及解釋器路徑,還可以在幫助菜單中使用JDK Help。但目前這個版本對中文支持性不好。4、EclipseEclipse是一個開放可擴展的集成開發環境(IDE)。它不僅可以用於Java的開發,通過開發插件,還可以構建其他的開發工具。Eclipse是開放源代碼的項目,並可以免費下載。它的官方網址是:[url]www.eclipse.org[/url],提供Releases、Stable Builds、Integration Builds和Nightly Builds下載。建議使用Releases或Stable Builds版本。Releases版本是Eclipse開發團隊發布的主要發行版本,是經過測試的穩定的版本,適合要求穩定而不需要最新改進功能的使用者選擇。目前最新的Release版本是Eclipse 3.0。Stable Builds版本對大多數使用者而言已足夠穩定,由開發團隊用比較穩定的Integration Build版本提升到Stable Build而來,適合想使用Eclipse新功能的使用者選擇。對於Releases版本2.1.x,在Eclipse的官方網站上有一個語言包可以下載,這樣Eclipse及其幫助都有簡體中文版。Eclipse用於Java開發,與UltraEdit、Editplus兩種編輯器和Jcreator IDE比較,Eclipse更專業,功能更強大。總之,Java語言提供一種強有力的工具支援程序設計員。Java讓程序設計變得更容易,因為它屬於面向對象語言,而且提供了自動的內存垃圾收集功能。再者,由於Java碼具備結構中立性,因此其應用程序成為非同質性運算環境 (例如Internet)的理想方案。]

Ⅳ Jbuild和javac有什麼區別

沒用過Jbuild,但我知道它是一個java開發工具(IDE),當然你完全可以用記事本寫java程序,但那樣的肯定非常的不方便,通過IDE,可以極大的提高開發效率。
javac是一個jdk的內的一個編譯器,我們寫的程序都是用文本形式表示的(*.java),那樣的文件是沒辦法運行的,所以先要把*.java編譯成機器能認識的語言,javac就完成了這一項工作,它把java源文件編譯成了class文件,使他能在虛擬機上運行。

Ⅵ 我要在cmd下運行Java,提示出現javac不適可運行程序,怎樣解決

還要配置環境變數(我的電腦->高級->環境變數-系統環境變數)
classpath: .;%JAVA_HOME%\lib\toos.jar;%JAVA_HOME%\jre\lib\rt.jar;//建一個classpath
JAVA_HOME:C:\Program Files\Java\jdk1.5.0_18;//新建一個JAVA_HOME;這里是jdk安裝的目錄一個
path: %JAVA_HOME%\bin;//在path目錄下的最前面加上這個

Ⅶ c語言和java哪個難

對於很多初學者來講,不太清楚Java和C語言的區別,為了讓那個大家更清晰的了解,近日特意給大家歸納了一些兩者的大致區別,希望能夠給大家帶來一定的幫助作用,也歡迎大家進行詳細補充和歸納。

首先,Java是針對於對象的機制,運算符「new」為每個對象分配內存空間,實際內存會隨程序的運行而發生改變。在運行的同時每個Java系統會對內存進行掃描,會對整個系統資源進行「採集」。這個時候一部分的垃圾文件就會被刪除或者暫時回收。這樣就使得整個系統資源就使用的更加充分合理,程序員對於這點就不需要擔心系統內存方面的一些管理要求,在編寫程序的時候也就變得更加的簡潔明了。而c語言則是通過malloc()和free()這兩資料庫函數來分別實現對於的內存的分配和內存的合理運用。
其次,C語言更多通過子函數調用,Java通過類和類引用,同時擁有非常多的介面。Java面向對象特徵主要表現為封裝,繼承和多變,C語言支持「運算符的重載」,這個是數據抽象和泛型編輯的一大寶典。Java本身為了降低復雜性而不支持這種多變機制,對於Java可以支持方法重載和重寫。
另外,Java比C語言多了一些修飾「Public、Private、Protected」都是一些比較常用的修飾符,而C語言沒有這類的修飾語言,換句話的意思就是C語言還缺乏一定的安全性。
再者,Java不使用指針,但是指針是C語言的精髓,然而Java中更多的是對數據每一位的操作,比如substring等。
總結來講,Java與C語言相比,Java具有簡單、面向對象、分布式、健壯、可移植、解釋性、安全、多線程、垃圾回收等等特點。而對於C語言則是一個比較宏觀的領域,因此Java可以說是C語言的基礎上開設,即C語是基石,Java在時下的運用和使用方面就比較全面。

Ⅷ 什麼是java

Java包含了一種計算機編程語言和一個平台。
Java編程語言是一種高級語言。由Sun微系統公司(Sun Macrosystem)發布,並作為一種開放的標准進行提供。
Java平台包括了Java虛擬機和Java應用程序介面(API)。
Java將原程序編譯成位元組碼(bytecode),並通過Java虛擬機(JVM)解釋位元組碼的方式來執行。因為這種運行方式,只要針對不同的計算機平台准備相應的Java虛擬機,就可以很方便的實現Java語言的跨平台性。因此,Java非常適合於企業網路和Internet環境,現在已成為Internet中最受歡迎、最有影響的編程語言之一。 Java有許多值得稱道的優點,如簡單、面向對象、分布式、解釋性、可靠、安全、結構中立性、可移植性、高性能、多線程、動態性等。

熱點內容
秦九韶演算法教案 發布:2024-04-26 13:30:22 瀏覽:412
解壓到當前文件夾右鍵 發布:2024-04-26 03:57:08 瀏覽:979
html5android教程視頻下載 發布:2024-04-26 03:09:59 瀏覽:867
伺服器的描述是什麼 發布:2024-04-26 03:08:32 瀏覽:394
個人加密 發布:2024-04-26 03:01:23 瀏覽:521
linuxusbgadget 發布:2024-04-26 02:52:54 瀏覽:304
我的世界空島世界伺服器地址 發布:2024-04-26 01:39:08 瀏覽:248
尼爾機械紀元加密 發布:2024-04-26 01:37:11 瀏覽:868
在控制台輸出sql語句 發布:2024-04-26 01:08:12 瀏覽:432
動畫java 發布:2024-04-26 01:02:40 瀏覽:12