java如何運行,java程序

本文目錄一覽:

java程序運行的五個步驟

1、Java程序從源文件創建到程序運行要經過兩大步驟:1、源文件由編譯器編譯成位元組碼(ByteCode)  2、位元組碼由java虛擬機解釋運行。因為java程序既要編譯同時也要經過JVM的解釋運行,所以說Java被稱為半解釋語言( “semi-interpreted” language)。

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

      編譯後的位元組碼文件格式主要分為兩部分:常量池和方法位元組碼。常量池記錄的是代碼出現過的所有token(類名,成員變數名等等)以及符號引用(方法引用,成員變數引用等等);方法位元組碼放的是類中各個方法的位元組碼。

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

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

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

然後JVM找到Main的主函數入口,開始執行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程序如何運行

java程序分為兩個階段,編譯期和運行期

首先寫好源代碼文件(如果你位元組碼文件請看怎樣運行它),在確保本機已經安裝有JDK的情況下,並配置好環境變數的情況下,打開DOS窗口(也可以用win+r,輸入cmd),輸入javac 路徑 命令,路徑 為需要編譯的源代碼文件,如果代碼沒有錯誤,則會生成一個或多個位元組碼文件。

在有位元組碼文件的情況下,確保本機有JRE,已經配置環境變數的情況下,打開DOS窗口,輸入命令 java 類名 來運行java程序

如何在MyEclipse中編譯java程序?如何運行java程序?

第一種方法:\x0d\x0a1、右擊要運行的java程序的文件;\x0d\x0a2、選擇Run As;\x0d\x0a3、再選擇Java Application即可運行。\x0d\x0a\x0d\x0a第二種方法:(使用MyEclipse的快捷鍵)\x0d\x0a1、先打開要運行的Java文件;\x0d\x0a2、查看MyEclipse上方菜單欄,會發現有一個綠色圓形裡面包裹著一個三角形的按鈕;\x0d\x0a3、點擊2步驟的按鈕即可運行java程序。\x0d\x0a注意:運行java程序的前提是這個java文件中必須有主方法(即public static void main(String[] args)這個方法),否則沒有主方法運行不了程序。

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命令 .運行。

運行JAVA軟體需要做什麼?

1.安裝JDK,安裝過程中可以自定義62616964757a686964616fe78988e69d8331333332643230安裝目錄等信息,例如我們選擇安裝目錄為D:\java\jdk1.5.0_08;

2.安裝完成後,右擊「我的電腦」,點擊「屬性」;

3.選擇「高級」選項卡,點擊「環境變數」;

4.在「系統變數」中,設置3項屬性,JAVA_HOME,PATH,CLASSPATH(大小寫無所謂),若已存在則點擊「編輯」,不存在則點擊「新建」;

5.JAVA_HOME指明JDK安裝路徑,就是剛才安裝時所選擇的路徑D:\java\jdk1.5.0_08,此路徑下包括lib,bin,jre等文件夾(此變數最好設置,因為以後運行tomcat,eclipse等都需要依*此變數);

Path使得系統可以在任何路徑下識別java命令,設為:

%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

CLASSPATH為java載入類(class or lib)路徑,只有類在classpath中,java命令才能識別,設為:

.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar (要加.表示當前路徑)

%JAVA_HOME%就是引用前面指定的JAVA_HOME;

6.「開始」-;「運行」,鍵入「cmd」;

7.鍵入命令「java -version」,「java」,「javac」幾個命令,出現畫面,說明環境變數配置成功;

8.好了,打完收工。下面開始你的第一個java程序吧。

下面講講java幾個環境變數的含義和linux下的配置方法:

通常,我們需要設置三個環境變數:JAVA_HOME、PATH 和 CLASSPATH。

JAVA_HOME:該環境變數的值就是 Java 所在的目錄,一些 Java 版的軟體和一些 Java 的工具需要用到該變數,設置 PATH 和 CLASSPATH 的時候,也可以使用該變數以方便設置。

PATH:指定一個路徑列表,用於搜索可執行文件的。執行一個可執行文件時,如果該文件不能在當前路徑下找到,則依次尋找 PATH 中的每一個路徑,直至找到。或者找完 PATH 中的路徑也不能找到,則報錯。Java 的編譯命令 (javac),執行命令 (java) 和一些工具命令 (javadoc, jdb 等) 都在其安裝路徑下的 bin 目錄中。因此我們應該將該路徑添加到 PATH 變數中。

CLASSPATH:也指定一個路徑列表,是用於搜索 Java 編譯或者運行時需要用到的類。在 CLASSPATH 列表中除了可以包含路徑外,還可以包含 .jar 文件。Java 查找類時會把這個 .jar 文件當作一個目錄來進行查找。通常,我們需要把 JDK 安裝路徑下的 jre\lib\rt.jar (Linux: jre/lib/rt.jar) 包含在 CLASSPATH 中。

PATH 和 CLASSPATH 都指定路徑列表,列表中的各項 (即各個路徑) 之間使用分隔符分隔。在 Windows 下,分隔符是分號 (;),而在 Linux 下,分隔符是冒號 (:)。

下面分別說明三個環境變數在 Windows 和 Linux 下如何設置,不過在此之前,我們需要做個假設。假設 JDK 在 Windows 下的安裝路徑是 C:\jdk\,在 Linux 下的安裝路徑是 /usr/local/jdk/。那麼,安裝後的 JDK 至少會包括如下內容:

C:\jdk (/usr/local/jdk)

|– bin

|– demo

|– include

|– jre

| |– bin

| `– lib

`– lib

***** 在 Windows 下設置

Windows 下使用 set 命令設置環境變數,為了使每一次啟動計算機都設置這些環境變數,應該在系統盤根目錄下的 autoexec.bat 文件中進行設置,如:

set JAVA_HOME=C:\jdk

set PATH=%JAVA_HOME%\bin;C:\Windows;C:\Windows\Command

set CLASSPATH=%JAVA_HOME%\jre\lib\rt.jar;.

有些版本的 Windows 不能用 %變數名% 來替換環境變數的內容,那麼就只好直接寫 C:\jdk 而不是 %JAVA_HOME% 了。另外,C:\Windows 和 C:\Windows\Command 是 Windows 會自動加入路徑的,所以可以從設置中去掉。如果在 autoexec.bat 中已經設置了 PATH,那隻需要將 %JAVA_HOME%\bin 加到原來設置 PATH 的那條語句中就行了。

CLASSPATH 也可以根據需要設置或者加入其它的路徑,比如你想把自己寫的一些類放在 C:\java 中,就可以把 C:\java 也添加到 CLASSPATH 中去,set CLASSPATH=%JAVA_HOME%\jre\lib\rt.jar;C:\java;.。

注意,在 CLASSPATH 中包含了一個「當前目錄 (.)」。包含了該目錄後,就可以到任意目錄下去執行需要用到該目錄下某個類的 Java 程序,即使該路徑並未包含在 CLASSPATH 中也可以。原因很簡單:雖然沒有明確的把該路徑包含在 CLASSPATH 中,但 CLASSPATH 中的 「.」 在此時就代表了該路徑,如:

假設在 C:\java 目錄下有可運行的類 HelloJava.class,那麼

C:\ set CLASSPATH=C:\jdk\jre\lib\rt.jar;. // 設置 CLASSPATH 環境變數,注意最後有一個 「.」

C:\ cd java // 轉到 C:\java 目錄

C:\java java HelloJava // 運行 HelloJava

Hello, Java. // 運行結果

C:\java _

**** 在 Linux 下設置

Linux 下使用「變數名=變數值」設置變數,並使用 export 命令將其導出為環境變數。為了使每一次登錄都自動設置好這些變數,你需要在 ~/.bash_profile 里或者 ~./bashrc 里進行設置,如

export JAVA_HOME=/usr/local/jdk

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=$JAVA_HOME/jre/lib/rt.jar:.

設置 PATH 時用的 $JAVA_HOME 是指替換變數 JAVA_HOME 的值到 $JAVA_HOME 所在位置。如上句實際就是 export PATH=/usr/local/jdk/bin:$PATH。這句中 $PATH 也是同樣的作用,不過這裡的 PATH 是指以前設置的 PATH 變數的值,而非本次設置 PATH 變數的值。

注意,在 CLASSPATH 中包含了一個「當前目錄 (.)」。包含了該目錄後,就可以到任意目錄下去執行需要用到該目錄下某個類的 Java 程序,即使該路徑並未包含在 CLASSPATH 中也可以。原因很簡單:雖然沒有明確的把該路徑包含在 CLASSPATH 中,但 CLASSPATH 中的 「.」 在此時就代表了該路徑,例如

假設在 /home/fancy/java 目錄下有可運行的類 HelloJava.class,那麼

[fancy@matrix fancy]$ export CLASSPATH=/usr/local/jdk/jre/lib/rt.jar:. // 設置 CLASSPATH,注意最後的「.」

[fancy@matrix fancy]$ cd ~/java // 轉到 /home/fancy/java

[fancy@matrix java]$ pwd // 顯示當前目錄

/home/fancy/java // 當前目錄是 /home/fancy/java

[fancy@matrix java]$ java HelloJava // 運行 HelloJava

Hello, Java // 運行結果

[fancy@matrix java]$ _

***** 實例分析

只是操作系統不同,略有差別。

兩個例子都提到一個「可運行的類」,它是指包含了 public static void main(String[] args) 方法的類,這將在下一章 HelloJava 一節中詳述。例中的 CLASSPATH 均未包含 HelloJava.class 所在的目錄(C:\java, /home/fancy/java),但是均包含了當前目錄 (.)。因此轉到包含 HelloJava.class 的目錄下去執行 java HelloJava,在 Java 尋找到 CLASSPATH 中的「. (當前目錄,C:\java, /home/fancy/java)」時,找到了 HelloJava.class,運行成功。

java怎麼逐句運行

生成class文件可以在命令控制台下用java文件名進行運行。

1、去網上下載jdk(jdk是一個編譯器就是解釋執行java代碼的)。

2、配置path和classpath的環境變數。去我的電腦屬性高級裡面的系統變數那配置你的path和classpath的環境變數。

3.測試。打開dos界面輸入javac按enter如果出現很多的英文就說明你的環境變數配置好了。到了這一步也就說明你的java環境弄好了。

4、編寫一個簡單的java程序編譯執行看看能不能用。做完這些就可以了。

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

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
QURU的頭像QURU
上一篇 2024-10-03 23:50
下一篇 2024-10-03 23:50

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

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

    編程 2025-04-29
  • Java JsonPath 效率優化指南

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

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

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

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

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

    編程 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
  • Java 8中某一周的周一

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

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

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

    編程 2025-04-29
  • Java判斷字元串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字元串中是否存在多個指定字元: 一、字元串遍歷 字元串是Java編程中非常重要的一種數據類型。要判斷字元串中是否存在多個指定字元…

    編程 2025-04-29

發表回復

登錄後才能評論