當前位置:首頁 » 編程軟體 » 用java寫編譯器

用java寫編譯器

發布時間: 2023-03-20 12:02:39

java編譯器是什麼怎樣用java寫程序沒有java專用寫程序的程序嗎jdk又是什麼

編譯器是eclipse和MyEclipse之類的東東 據說有大神拿記事本也能寫
寫程序的話要先有個包 包里有個類 類里有個主方法
jdk包括java運行環境和基礎類庫

❷ 如何編寫你的第一個Java程序 3種方法來編寫你的第一個Java程序

目錄方法1:編寫你的第一個Java程序1、要開始用Java編寫程序,先設置你的工作環境。2、任何一種類似記事本的程序都能夠用於Java編程。3、確保安裝了Java軟體開發工具包方法2:Hello World 程序1、我們將首先創建一個能列印"Hello World"的程序。2、聲明類和main方法。3、編寫將列印出"Hello World"的代碼行。4、把這些都放在一起。5、保存文件,並打開命令提示符或終端來編譯程序。6、運行程序。7、恭喜,你方法3:輸入和輸出1、我們現在將擴展我們的Hello World程序,以接受用戶的輸入。2、導入Scanner(掃描儀,由於編程時使用Scanner,故下文用Scanner)類。3、在main方法中,創建Scanner對象的一個新實例(instance)。4、提示用戶輸入。5、要求Scanner對象接受用戶鍵入的下一行,並將其存儲在變數中。6、向用戶顯示問候語。7、一起保存以上代碼。8、編譯並運行。Java是James Gosling於1995年創建的一種面向對象的編程語言,它用「欄位」(fields,描述對象的屬性),和「方法」(methods,對象可以執行的操作),將概念表示為「對象」(objects)。Java是一種「編寫一次,就可以在任何地方運行」的編程語言,可以在任何裝有Java虛擬機(JVM)的平台上運行。由於Java是一種用上大量英文單詞的編程語言,母語為英語的初學者很容易學習和理解,非英語母語者只要下一番苦功也能很快上手。本教程介紹如何用Java編寫程序。
方法1:編寫你的第一個Java程序
1、要開始用Java編寫程序,先設置你的工作環境。許多程序員使用集成開發環境(Integrated Development Environment,IDE)進行Java編程,比如Eclipse和NetBeans。但是不必使用臃腫的IDE,也可以編寫Java程序並編譯它。
2、任何一種類似記事本的程序都能夠用於Java編程。高級程序員有時更喜歡使用終端內的文本編輯器,如Vim和Emacs。我們推薦一個可以安裝在基於Windows和linux系統(Mac、Ubuntu等)的文本編輯器:SublimeText。我們將在本教程中使用它。
3、確保安裝了Java軟體開發工具包。你要用它來編譯程序。在基於Windows的操作系統中,如果環境變數不正確,則可能在運行javac時出錯。有關JDK安裝的詳細信息,可以參閱如何安裝Java軟體開發工具包,以避免此錯誤。
方法2:Hello World 程序
1、我們將首先創建一個能列印"Hello World"的程序。在文本編輯器中,創建一個新文件,並將其另存為"HelloWorld.java"。HelloWorld是類名,你需要讓類名與文件同名。
2、聲明類和main方法。main方法 public static void main(String[] args)是程序運行時執行的方法。這個main方法在每個Java程序中都以相同方式調用。
public class HelloWorld { public static void main(String[] args) { }}
3、編寫將列印出"Hello World"的代碼行。
System.out.println("Hello World.");讓我們看看這一行的組成成分:System 告訴系統執行某些操作。
out 告訴系統我們要輸出一些內容。
println ?代表"列印行(print line)",我們用它告訴系統在輸出中列印一行文字。
("Hello World.") 周圍的圓括弧表示方法 System.out.println()接受一個參數。在本例中,該參數是字元串"Hello World."
注意,Java中有一些我們必須遵守的規則:必須始終在每行末尾添加分號。
Java區分大小寫,因此必須以正確的大小寫寫入方法名、變數名和類名,否則將出現錯誤。
某個方法或循環的特定代碼塊包含在花括弧中。
4、把這些都放在一起。最後Hello World程序應如下所示:
public class HelloWorld { public static void main(String[] args) {System.out.println("Hello World."); }}
5、保存文件,並打開命令提示符或終端來編譯程序。打開保存HelloWorld.java的文件夾,並鍵入javac HelloWorld.java。這告訴Java編譯器你想要編譯HelloWorld.java。如果有錯誤,編譯器會告訴你做錯了什麼。否則,你不應該看到來自編譯器的任何消息。如果現在查看helloworld.java所在的目錄,應該會看到helloworld.class。這是Java用來運行程序的文件。
6、運行程序。我們終於可以運行我們的程序了! 在命令提示符或終端中,鍵入java HelloWorld。這是在告訴Java你想運行HelloWorld類。你應該看到控制台出現 "Hello World"。
7、恭喜,你完成了第一個Java程序!
方法3:輸入和輸出
1、我們現在將擴展我們的Hello World程序,以接受用戶的輸入。在我們的Hello World程序中,我們列印出一個字元串供用戶查看,但是只有當程序能夠接收用戶輸入信息,才能稱之為程序的交互功能。我們現在將擴展程序,提示用戶輸入他或她的名字,然後用名字問候用戶。
2、導入Scanner(掃描儀,由於編程時使用Scanner,故下文用Scanner)類。在Java中,我們有一些可以訪問的內置庫,但是我們必須導入它們。其中一個庫是java.util,它包含我們獲取用戶輸入所需的Scanner對象。為了導入Scanner類,我們在代碼的開頭添加了以下行。
import java.util.Scanner;這告訴程序我們想使用java.util包中的Scanner對象。
如果希望訪問java.util包中的每個對象,只需在代碼的開頭編寫import java.util.*; 即可。
3、在main方法中,創建Scanner對象的一個新實例(instance)。Java是一種面向對象的編程語言,因此它使用對象來表示概念。Scanner對象是含有欄位和方法的對象。為了使用Scanner類,我們必須創建一個新的Scanner對象、它可以填充的欄位和使用的方法。示例如下:
Scanner userInputScanner = new Scanner(System.in);userInputScanner是剛剛創建的Scanner對象實例的名稱。注意名稱是用駱駝體(每個單詞首字母大寫)寫的,這是Java中變數命名的規定。
我們使用 new 運算符創建對象的新實例。因此在本例中,我們通過 new Scanner(System.in),創建了Scanner對象的新實例。
Scanner對象接受一個參數,該參數告訴對象要掃描什麼。在本例中,我們輸入System.in 作為參數。System.in告訴程序掃描來自系統的輸入,這是用戶將在程序中鍵入的輸入。
4、提示用戶輸入。我們必須提示用戶輸入,以便用戶知道何時在控制台中鍵入內容。這可以通過System.out.print或System.out.println實現。
System.out.print("What's your name? ");
5、要求Scanner對象接受用戶鍵入的下一行,並將其存儲在變數中。Scanner將始終接收用戶鍵入的數據。下面的行將要求Scanner接受用戶鍵入的姓名,並將其存儲在變數中:
String userInputName = userInputScanner.nextLine();在Java中,使用對象方法的規定是objectName.methodName(parameters)。在userInputScanner.nextLine()中,我們使用剛才給出的名稱調用Scanner對象,然後調用它的方法nextLine() ,該方法不接受任何參數。
注意,接下來程序將把下一行存儲在一個"字元串"對象中。我們已將字元串對象命名為userInputName
6、向用戶顯示問候語。現在我們已經存儲了用戶名,我們可以列印一個問候語給用戶。還記得我們在main類中編寫的 System.out.println("Hello World."); 嗎? 我們剛剛編寫的所有代碼都應該放在這一行上面。現在我們可以修改這一行,如:
System.out.println("Hello " + userInputName + "!");我們把"hello"、用戶名和"!" 通過編寫 "Hello " + userInputName + "!" 連起來的方式,稱為字元串串聯。
這里我們有三個字元串:"Hello "、userInputName和"!"。Java中的字元串是不可更改的。因此,當我們連接這三個字元串時,我們實際上創建了一個包含問候語的新字元串。
然後將這個新字元串作為參數輸入System.out.println。
7、一起保存以上代碼。我們的代碼現在應該如下所示:
import java.util.Scanner;public class HelloWorld { public static void main(String[] args) {Scanner userInputScanner = new Scanner(System.in);System.out.print("What's your name? ");String userInputName = userInputScanner.nextLine();System.out.println("Hello " + userInputName + "!"); }}
8、編譯並運行。進入命令提示符或終端,並運行與我們在第一次迭代HelloWorld.java時運行的命令。我們必須首先編譯程序:javac helloworld.java。然後我們可以運行它:java HelloWorld。
小提示Java是一種面向對象的編程語言,建議你閱讀更多關於面向對象編程語言的基礎知識,非常有用。
面向對象編程有許多特徵。其中三個主要特徵是:封裝:限制訪問對象某些組件的能力。Java為欄位和方法提供私有(private)、受保護(protected)和公共(public)三種修飾符。
多態:對象可以轉換標識。在Java中,可以將一個對象轉換為另一個對象,以使用另一個對象的方法。
繼承:使用與當前對象位於同一層次結構中的另一個類的欄位和方法的能力。

❸ 用Java可以寫c語言編譯器嗎

用java是可以寫語言編譯器的,用任何語言工具寫都可以。 各語言開發工具間只有開發效率的差異,沒有可行不可行的區別。

編譯器其實就是一個翻譯工具,它可以把代碼直接翻譯成二進制文件交給CPU執行(二進制指令就是CPU的指令集,當然可以直接操作內存),當然,這個二進制文件需要符合操作系統的可執行文件的格式(PE格式或ELF格式)才能執行。

換個角度理解:
linux gcc實際上就是一個工具集合,包含編譯器,匯編器,連接器等
編譯器就是把c語言程序翻譯為一種叫做目標文件的中間表示形式,然後交給匯編器,翻譯為匯編程序,而匯編執行直接對應二進制機器碼,鏈接之後就可以變成可執行文件了。

而用java實現的編譯器完全可以代替gcc工具集合中的編譯器,生成相同的目標文件的中間表示形式,在交給gcc匯編器,連接器等處理。

❹ 我想用JAVA做個簡易編譯器,說說思路,或者有沒有現成的代碼JAVAC的代碼有嗎

要寫編譯器?自己開發語言?很牛X,先贊一個!
自己寫編譯器,原理其實不難,就那麼點東西。找一個編譯原理看明白就OK了,詞法、語法、語義、語境。
這些東西用一些自動機,圖靈機,範式,正規之類的就可以搞定。分析嘛,什麼逆波蘭,樹形,一共也沒幾種的。
但最難做的是優化,還有機器代碼生成這二部分。
優化怎麼做?你的中間代碼放哪?先優化還是先生成中間代碼?
機器代碼怎麼搞?用匯編?還是直接和機器特性相關?
反正這二點我是暈,雖然原理還是那點東西,但真搞起來,我一點思路都沒有。。。
國內寫編譯器的有,但都不是很牛X。
想要寫好,還得多看E文資料。
加油吧。

❺ 如何用java實現一個文本編譯器

JDK自帶一個簡單的Notepad,你可以研究一下他的源代碼。
在%JAVA_HOME%\demo\jfc\Notepad 目錄下

JDK自帶一個稍復雜的Stylepad,你可以研究一下他的源代碼。
在%JAVA_HOME%\demo\jfc\Stylepad目錄下

❻ java用什麼軟體編寫代碼

JAVA編程常用的軟體:

1、Eclipse:

Eclipse 是一個開放源代碼的、基於 Java 的可擴展開發平台。就其本身而言,它只是一個框架和一組服務,用於通過插件組件構建開發環境。幸運的是,Eclipse 附帶了一個標準的插件集,包括 Java 開發工具(Java Development Tools,JDT)。

2、MyEclipse:

MyEclipse是Eclipse的升級版,也是一款功能強大的J2EE集成開發環境,由Genuitec公司發布,提供免費版和收費版。被譽為最好用的Java IDE之一。

MyEclipse 是對Eclipse IDE的擴展,利用它可以在資料庫和JavaEE的開發、發布以及應用程序伺服器的整合方面極大的提高工作效率。

3、IntelliJ IDEA:

IntelliJ IDEA是一款綜合的Java 編程環境,被許多開發人員和行業專家譽為市場上最好用的IDE之一,與MyEclipse齊名。

它提供了一系列最實用的的工具組合:智能編碼輔助和自動控制,支持J2EE,Ant,JUnit和CVS集成,非平行的編碼檢查和創新的GUI設計器。

4、NetBeans:

NetBeans IDE是一個屢獲殊榮的集成開發環境,可以方便的在Windows、Mac、Linux和Solaris中運行。NetBeans包括開源的開發環境和應用平台,NetBeans IDE可以使開發人員利用Java平台能夠快速創建Web、企業、桌面以及移動的應用程序。

5、BlueJ:

BlueJ是一款支持Java編程語言的集成開發環境(IDE)。它原本是為了教育目的而開發的,同時也適合於那些想做小型軟體開發的開發人員。它的運行需要JDK(Java開發工具包)的幫助。BlueJ主要是為面向對象的程序設計教學而開發的,因此它的設計不同於其他的開發環境。

參考資料來源:網路-BlueJ

參考資料來源:網路-IntelliJ IDEA

參考資料來源:網路-Netbeans

參考資料來源:網路-eclipse

參考資料來源:網路-MyEclipse

❼ 用java做一個java的編譯器

Javac編譯器讀取Java源代碼,並將其編譯成位元組代碼,說的直白一點就是把java語言翻譯成計算機可以識別的二進制代碼。
java的編譯器有很多種,有sun公司的jdk,有oracle的jdk,還有其他一些公司的,多採用sun公司的jdk。
java同時需要集成開發環境,它集成了java的編譯器,讓我們不必通過命令行來編譯java類文件,通過它我們可以快速的開發我們需要的程序。目前用的比較多的集成開發環境有eclipse和myeclipse,eclipse有很多具有針對性的版本來應對不同的開發,而myeclipse則是相對來說功能比較全面,當然也需要購買,個人建議myeclipse。

❽ 初學java 用什麼編譯器

一 eclipse / myeclipse
當年學習java,最先接觸到的就是 eclipse。喔了個噻,當時感覺eclipse好牛啊,有好多先進的功能:
1. 可以方便地進行包管理。可視化窗口,創建目錄和文件都很方便,移動包,復制包等都可以方便的進行。
2.熱鍵操作。復制保存啥的就不說了,代碼提示這個功能還是很不錯的,在寫著寫著,腦子突然短路的時候,可以通過快捷鍵把腦子快速帶回來。
3.代碼調試。有時候,寫著寫著代碼,突然間就報錯了,不知道哪裡錯了,咋整,這時候,如果使用編輯器的話,就可以使用 debug模式進行調試了,找出問題所在,解決問題。
4.一些代碼管理等插件。在企業中肯定要用到代碼同步工具,svn 或者 git , 在編輯器中會提供這樣的插件,方便代碼的管理。

二 idea
相比 eclipse 和 myeclipse ,idea 的基本功能差不多。
1. 包管理:也是有方便的包和資源管理。
2.熱鍵:也是提供熱鍵管理的,而且還很好用。
3.代碼調試:debug模式用起來也是很舒服。
4.插件方面:也是支持一些插件的,如 熱部署插件等。

三 比較
1. 操作:兩個軟體有不同的快捷鍵,雖然idea兼容部分eclipse快捷鍵,但是不建議這樣做。
2.資源消耗:idea更能吃內存啊呦喂,電腦配置低的傷不起啊。eclipse要更柔和一點。
3.是否免費:eclipse 是免費的,myeclipse和idea 是要付費的呦。但是嘛,你懂得。
4.專業性:idea 應該是更專業的,有更高的代碼更新機制和代碼提示功能。但是 eclipse 涉及的范圍更廣,除了java 和可以編輯其他語言的項目。

四 建議
1. 如果電腦配置比較低,建議使用 eclipse ,並且使用較低版本的,這樣,電腦不會太吃力。如果配置比較高,比如,16G內存,固態硬碟,那就使用idea吧。
2. 沒有最好的編輯器,只有最適合自己的編輯器。任何一個編輯器用習慣了,都是很不錯的。
希望對您有所幫助!~

❾ 如何使用javac命令編譯java源程序

1.建文本文檔,輸入自己的java程序。

熱點內容
inf12編譯器 發布:2024-04-25 18:15:39 瀏覽:98
撲克總督3安卓哪裡下載 發布:2024-04-25 18:10:02 瀏覽:394
什麼網站是php 發布:2024-04-25 18:03:42 瀏覽:220
java教程免費下載 發布:2024-04-25 18:02:01 瀏覽:442
i西安編程 發布:2024-04-25 16:55:35 瀏覽:263
核磁看壓縮 發布:2024-04-25 16:37:22 瀏覽:432
訪問不上光貓 發布:2024-04-25 16:13:44 瀏覽:319
部隊電腦配置有哪些 發布:2024-04-25 16:13:43 瀏覽:970
霍曼密碼鎖什麼價位 發布:2024-04-25 16:08:01 瀏覽:750
ftp雙機熱備 發布:2024-04-25 16:03:48 瀏覽:360