運行java,運行java程序需要什麼軟體

本文目錄一覽:

運行JAVA軟體需要做什麼?

1、編輯源代碼xxx.java 

2、編譯xxx.java文件生成位元組碼文件xxx.class

3、JVM中的類載入器載入位元組碼文件

4、JVM中的執行引擎找到入口方法main(),執行其中的方法

運行Java需安裝什麼

如果你需要運行java程序,只需安裝JRE就可以了。如果你需要編寫java程序,需要安裝JDK。

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?

第一步:下載並安裝JDK 6.0,安裝路勁為: C:\java\jdk1.6 . \x0d\x0a\x0d\x0a第二步:對「我的電腦」按右鍵,選「屬性」,在「系統屬性」窗口中選「高級」標籤,再按「環境變數」按鈕,彈出一個「環境變數」的窗口,在系統變數中新建一個變數,變數名為「JAVA_HOME「,變數值為”C:\java\jdk1.6″;如果存在”PATH”變數名,按編輯,在變數值最前面輸入”C:\java\jdk1.6\bin;”.(注意以分號結尾,沒有引號.如果沒有”PATH”,點擊新建一個”PATH”變數名,變數值一樣). \x0d\x0a\x0d\x0a第三步:單擊Windows xp的「開始」-「運行」,在彈出的運行窗口中輸入cmd,按回車,打開一個命令行窗口,輸入javac,將會看見一系列javac常用參數選項. 恭喜你java環境安裝成功了. \x0d\x0a\x0d\x0a第四步:開始編程(注意先雙擊打開”我的電腦”,在”工具” -“文件夾選項” – 點擊”查看”選項 -在”高級設置”中找到”隱藏已知文件類型的擴展名”前面的小勾去掉)。在C盤的根目錄中新建一個子目錄,名為”JavaTest」,以作為存放 Java源代碼的地方。在JavaTest文件夾中,新建文本文檔, 把「新建 文本文檔.txt」改為”HelloWorld.java”。用記事本打開”HelloWorld.java”, 輸入: \x0d\x0apublic class HelloWorld { \x0d\x0apublic static void main(String[] args) { \x0d\x0aSystem.out.println(“Hello, world!”); \x0d\x0aSystem.out.println(“恭喜你成功運行了第一個java應用程序!”); \x0d\x0a} \x0d\x0a} \x0d\x0a注意源文件名必須與類名相同,且類修飾符為public,文件名後綴為”.java”.保存文件. \x0d\x0a\x0d\x0a第五步:在命令行窗口中輸入 cd C:\JavaTest,將當前路徑轉入JavaTest目錄中。然後,輸入 javac HelloWorld.java,JDK就在JavaTest文件夾中編譯生成一個HelloWorld.class的類文件。 \x0d\x0a\x0d\x0a第六步:在命令行窗口中輸入 java HelloWorld,(注意沒有.class後綴)屏幕出現了 \x0d\x0aHello world! \x0d\x0a恭喜你成功運行了第一個java應用程序! \x0d\x0a表示成功了,也就順利地編譯及運行了第一個Java應用程序。

java運行的五個步驟?

Java程序從源文件創建到程序運行要經過兩大步驟:1、源文件由編譯器編譯成位元組碼(ByteCode)

2、位元組碼由java虛擬機解釋運行。因為java程序既要編譯同時也要經過JVM的解釋運行,所以說Java被稱為半解釋語言( “semi-interpreted” language)。

下面通過以下這個java程序,來說明java程序從編譯到最後運行的整個流程。代碼如下:

//MainApp.java

public class MainApp {

public static void main(String[] args) {

Animal animal = new Animal(“Puppy”);

animal.printName();

}

}

//Animal.java

public class Animal {

public String name;

public Animal(String name) {

this.name = name;

}

public void printName() {

System.out.println(“Animal [“+name+”]”);

}

}

第一步(編譯): 創建完源文件之後,程序會先被編譯為.class文件。Java編譯一個類時,如果這個類所依賴的類還沒有被編譯,編譯器就會先編譯這個被依賴的類,然後引用,否則直接引用,這個有點象make。如果java編譯器在指定目錄下找不到該類所其依賴的類的.class文件或者.java源文件的話,編譯器話報「cant find symbol」的錯誤。

編譯後的位元組碼文件格式主要分為兩部分:常量池和方法位元組碼。常量池記錄的是代碼出現過的所有token(類名,成員變數名等等)以及符號引用(方法引用,成員變數引用等等);方法位元組碼放的是類中各個方法的位元組碼。下面是MainApp.class通過反彙編的結果,我們可以清楚看到.class文件的結構:

第二步(運行):java類運行的過程大概可分為兩個過程:1、類的載入 2、類的執行。需要說明的是:JVM主要在程序第一次主動使用類的時候,才會去載入該類。也就是說,JVM並不是在一開始就把一個程序就所有的類都載入到內存中,而是到不得不用的時候才把它載入進來,而且只載入一次。

下面是程序運行的詳細步驟:

在編譯好java程序得到MainApp.class文件後,在命令行上敲java AppMain。系統就會啟動一個jvm進程,jvm進程從classpath路徑中找到一個名為AppMain.class的二進位文件,將MainApp的類信息載入到運行時數據區的方法區內,這個過程叫做MainApp類的載入。

然後JVM找到AppMain的主函數入口,開始執行main函數。

main函數的第一條命令是Animal animal = new Animal(“Puppy”);就是讓JVM創建一個Animal對象,但是這時候方法區中沒有Animal類的信息,所以JVM馬上載入Animal類,把Animal類的類型信息放到方法區中。

載入完Animal類之後,Java虛擬機做的第一件事情就是在堆區中為一個新的Animal實例分配內存, 然後調用構造函數初始化Animal實例,這個Animal實例持有著指向方法區的Animal類的類型信息(其中包含有方法表,java動態綁定的底層實現)的引用。

當使用animal.printName()的時候,JVM根據animal引用找到Animal對象,然後根據Animal對象持有的引用定位到方法區中Animal類的類型信息的方法表,獲得printName()函數的位元組碼的地址。

開始運行printName()函數。

特別說明:java類中所有public和protected的實例方法都採用動態綁定機制,所有私有方法、靜態方法、構造器及初始化方法都是採用靜態綁定機制。而使用動態綁定機制的時候會用到方法表,靜態綁定時並不會用到。

java如何從哪裡運行?

jdk安裝好配置環境變數後,系統就承認了 java,javac等命令,當編譯好java文件,就可以在開始——運行——cmd的dos系統下運用指定命令運行java文件。

JDK 是整個Java的核心,包括了Java運行環境,Java工具和Java基礎的類庫。

JDK包含的基本組件包括:

javac – 編譯器,將源程序轉成位元組碼

jar – 打包工具,將相關的類文件打包成一個文件

javadoc – 文檔生成器,從源碼注釋中提取文檔

jdb – debugger,查錯工具

java – 運行編譯後的java程序(.class後綴的)

appletviewer:小程序瀏覽器,一種執行HTML文件上的Java小程序的Java瀏覽器。 Javah:產生可以調用Java過程的C過程,或建立能被Java程序調用的C過程的頭文件。 Javap:Java反彙編器,顯示編譯類文件中的可訪問功能和數據,同時顯示位元組代碼含義。 Jconsole: Java進行系統調試和監控的工具

總之,jdk並不是一個應運軟體,並不能從哪裡運行。編譯時在任何可輸入文本的軟體中均可(通常用.txt記事本編譯),編譯好後改名.java文件,在dos系統中用 javac命令編譯連接 java命令 .運行。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/286239.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-22 16:07
下一篇 2024-12-22 16:07

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java Bean載入過程

    Java Bean載入過程涉及到類載入器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean載入的過程。 一、類載入器 類載入器是Java虛擬機…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智慧、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Python腳本控制其他軟體

    Python作為一種簡單易學、功能強大的腳本語言,具有廣泛的應用領域,在自動化測試、Web開發、數據挖掘等領域都得到了廣泛的應用。其中,Python腳本控制其他軟體也是Python…

    編程 2025-04-29
  • Python程序文件的拓展

    Python是一門功能豐富、易於學習、可讀性高的編程語言。Python程序文件通常以.py為文件拓展名,被廣泛應用於各種領域,包括Web開發、機器學習、科學計算等。為了更好地發揮P…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29

發表回復

登錄後才能評論