java編譯模式
#java編譯器對`String常量表達式`的優化:
- 1.String+String 可以被編譯器識別為常量表達
String a="ab" ;
String b="a"+"b";//編譯後:b="ab"
System.out.println(a==b);//true
分析:
編譯器將"a"+"b"當做常量表達式,在編譯時期進行優化,直接取"ab". 在運行時期
並沒有創建新的對象,而是從jvm字元串常量池中獲取之前已經存在的"ab"對象.
- 2.String+基本類型 可以被編譯器識別為常量表達式
String a="a1";
String b="a"+1; //"a1"
String c="a"+true;//"atrue"
String d="a"+3.14;//"a3.14"
#java編譯器對`常量`優化:
* 它是編譯時的一項優化技術,將代碼的常量計算在編譯期完成,節約了運行時的計算量.
1.常量替換
//編譯前:
final int x=10;
int y=x;
//編譯後
int x=10;
int y=10;//編譯時,常量替換了
2.數學恆等式的模式匹配替換
//編譯前:
int x=10+10;
//編譯後
int x=20;//編譯時,模式匹配替換了
3.常量折疊
//編譯前:
boolean flag=true||(a || b && c);
//編譯後
boolean flag=true;//編譯時,常量折疊了
『貳』 如何用Cmd命令行編譯Java代碼程序
在初學Java的時候,會使用cmd命令的模式來編譯運行代碼,下面就來介紹下如何命令行編譯
01
打開一份Java代碼,如下圖
02
打開文件所在的位置,滑鼠右鍵,打開shell
03
輸入命令javac HelloWorld.java,回車,出現下圖所示編譯後的class文件
04
輸入命令 java -cp . HelloWorld,回車,輸出結果
『叄』 如何編譯JAVA文件
用命令提示符編譯java程序的步驟:
1.先新建文本文檔,輸入自己的java程序。
這里我寫一個簡單的java程序,來做示範。
import java.util.*;
public class HelloDate{
public static void main(String[] args)
{
System.out.println("Hello,it's:");
System.out.println(new Date());
}
}
經驗總結:運行一個java程序的大概的流程是:
書寫源代碼------>編譯------->運行---->結束。
注意事項:
1.在輸入的時候一定要注意區分大小寫。
2.操作之前要保證自己的電腦配置了java的運行環境。
『肆』 如何在命令行模式下編譯運行帶包的java文件
進入D:\workspace路徑下,輸入:
javac
com\A.java
com\B.java-d
.
紅色為源文件路徑,藍色為輸出路徑。
則在生成兩個文件:
D:\workspace\com\A.class
D:\workspace\com\B.class注意:
-d
後面是
空格
+
點點的意思是,在
.java
文件的根目錄,為了方便也可以採用:
javac
com\*.java-d
.運行時,在包路徑的根目錄上運行,比如:在
D:\workspace
路徑下,輸入:
java
com.A或
java
com/A
如果當前路徑是
C:\
或其他路徑,那麼編譯:
javac
-cp
D:\workspace
D:\workspace\com\*.java
-d
.運行:
java
-cp
D:\workspace
com.A
總結
1、把包看成是源文件的一部分,而不是一個路徑,這點很重要。
『伍』 java怎麼編譯
如果是在命令行下編譯,可以進入相應的目錄然後輸入
javac [你的java文件名.java]
想要運行就輸入
java [你編譯後的class文件名]
例如你的java文件名叫demo.java,在D盤根目錄下
在命令行下進入D盤,輸入
javac demo.java 就能編譯了。
要運行就輸入
java demo就可以運行了。
如果用IDE工具開發,直接按工具欄上的綠色箭頭就可以自動編譯運行了。
『陸』 java的『編譯器』與『即時編譯器』有什麼區別
你好!編譯器(在windows下,javac.exe)將源代碼(java文件)編譯為位元組碼(bytecode),存放在class文件中。
位元組碼不能直接在機器上執行,而是通過虛擬機(windows下是java.exe)執行。具體的執行方式有兩種:
1. 一般情況下解釋執行。解釋執行並不是「解釋為用c++語言寫成的程序」,而是jvm把位元組碼看成腳本,根據位元組碼中的指令,由JVM去調用實際的本地方法。
2. 在打開了JIT參數的前提下,jvm會把執行過程中發現的熱點位置,由jvm內部的即時編譯器編譯為本地機器碼直接執行。
編譯器將java文件編譯為class文件,解釋器將class文件變為機器語言
『柒』 怎樣編譯java文件命令行模式怎樣用
打入你的java的安裝路徑\bin\javac java源文件名.java回車
以上是編譯
執行:
打入你的java的安裝路徑\bin\java java文件名回車
『捌』 如何編譯java
用命令提示符編譯java程序的步驟:
1.先新建文本文檔,輸入自己的java程序。
這里我寫一個簡單的java程序,來做示範。
import java.util.*;
public class HelloDate{
public static void main(String[] args)
{
System.out.println("Hello,it's:");
System.out.println(new Date());
}
}
經驗總結:運行一個java程序的大概的流程是:
書寫源代碼------>編譯------->運行---->結束。
注意事項:
1.在輸入的時候一定要注意區分大小寫。
2.操作之前要保證自己的電腦配置了java的運行環境。
『玖』 java的"一次編譯,到處運行"的機制是如何實現的
JVM是一個java虛擬機,所謂的java虛擬機就是和普通的虛擬機一樣,擁有自己的CPU,RAM之類的。我們所使用的操作系統是Windows的操作系統,Windows操作系統支持的可執行文件是EXE文件,也就是說在Windows的操作系統上只有EXE的文件是可以直接被操作系統解釋為底層機器語言並進行運行的。而java虛擬機可以支持的是.class的可執行文件,在java的虛擬機中遇到.class的文件就可以直接翻譯成java虛擬機所能是別的底層機器語言並進行執行。這就是JVM的機制,正是因為java的這種機制才實現了java的跨平台,在不同的平台上安裝能夠在相應平台上運行的虛擬機,然後在java虛擬機中運行java的源程序,「一次編譯,多次執行」就此實現了。
所以java的跨平台是離不開虛擬機的支持的。虛擬機充當著java源程序和操作系統之間的中間,不同的操作系統只需要尋找相應的中介就可以實現在不同的操作系統上運行。而java的編譯只是吧.java文件編譯為.class位元組碼文件而已,然後把位元組碼交給虛擬機去執行。
虛擬機在執行的時候是讀一句位元組碼文件人後解釋一句給操作系統聽,這就是為什麼java是解釋型的語言。
所謂的編譯型的語言是指這種語言被編譯之後生成的是可以直接供操作系統執行的010101文件,像C,C++都是編譯型的,java因為中間有JVM這么個東西所以是解釋型的。
『拾』 JAVA代碼怎麼編譯啊
1.安裝jdk1.5或更高版本,比如說安裝在D盤
2.在系統屬性的環境變數的path變數中加入C:\Program Files\Java\jdk1.6.0_12\bin;
3.在dos中輸入javac,如果有反應就算是配置好了。
4.編譯的格式是:javac 源文件名.java
5.運行格式是:java 源文件名