IT兄弟連 Java語法教程 Java語言入門 典面試題

1.請說明JVM、JRE和JDK是什麼?它們有什麼關係?java

JVM是Java虛擬機,Java Virtual Machine的縮寫,是一個虛構出來的計算機,經過在實際的計算機上仿真模擬各類計算機功能來實現的。Java虛擬機有本身完善的硬體架構,如處理器、堆棧、寄存器等,還具備相應的指令系統。JVM屏蔽了與具體操做系統平臺相關的信息,使得Java程序只需生成在Java虛擬機上運行的目標代碼(字節碼),就能夠在多種平臺上不加修改地運行。sql

JRE是Java運行環境,Java Runtime Environment的縮寫。運行Java程序所必須的環境的集合,包含JVM標準實現及Java核心類庫。數據庫

JDK是Java標準版開發工具包,是Sun提供的一套用於開發Java程序的開發包,它提供了編譯、運行Java程序所需的各類工具和資源,其中包括了編譯器和Java運行時環境JRE。編程

JDK中包含JRE,JRE中包含JVM,若是隻是運行Java程序,那麼只須要下載安裝JRE就能夠了,可是若是想開發Java程序,那麼就須要下載安裝JDK。網絡

 

2.如何編譯Java源文件?如何運行一個Java程序?架構

Java的源文件文件名是以.java爲後綴的,當編寫好Java源文件後,須要使用JDK中提供javac.exe程序進行編譯。在系統控制檯(CMD)中進入源文件所在的目錄,使用「javac源文件名」的命令格式進行編譯,在編譯的過程當中若是沒有提示錯誤就表示編譯成功,會在源文件同目錄下生成編譯後的字節碼文件,Java的字節碼文件文件名與源文件同名,可是使用.class做爲文件名的後綴。編程語言

當Java的源代碼編譯成字節碼文件後,就能夠經過java命令運行這個Java程序。在系統控制檯(CMD)中進入字節碼文件所在的目錄,使用「java類名」的命令格式運行Java程序。java命令中使用的類名是Java源程序中定義的類名,而不是Java字節碼文件的文件名。若是使用「java字節碼文件名」來運行Java程序會提示錯誤。分佈式

 

3.Java語言是不是跨平臺的?若是是跨平臺的,那平臺指的是什麼?工具

Java語言是跨平臺的編程語言,這裏說的平臺指的是計算機中的CPU和操做系統的總體。CPU種類繁多,不一樣類型的CPU使用了不一樣的指令集,不一樣的操做系統支持不一樣的指令集。但由於目前主流的操做系統支持大部分主流的CPU的所有指令集,因此在操做系統層面上就屏蔽了CPU種類的不一樣,可是操做系統根據CPU中通用寄存器的寬度也分紅了32位操做系統和64位操做系統。因此目前說的Java語言跨平臺指的是跨操做系統版本。開發工具

 

4.JavaSE、JavaEE和JavaME分別表明了什麼?

JavaSE:Java Standard Edition,標準版。是咱們經常使用的一個版本,從JDK1.5開始,更名爲JavaSE,主要用於桌面應用軟件的編程。

JavaEE:Java Enterprise Edition, 企業版。JavaEE是J2EE的一個新名稱,主要用於分佈式的網絡程序的開發

JavaME:Java Micro Edition,機頂盒、移動電話和PDA之類嵌入式消費電子設備提供的Java語言平臺,包括虛擬機和一系列標準化的JavaAPI。

 

5.Java跨平臺是如何實現的?

Java是利用JVM(Java虛擬機)實現跨平臺的。

Java源代碼(*.java)通過Java編譯器編譯成Java字節碼(*.class),執行Java字節碼,Java字節通過JVM解釋爲具體平臺的具體指令並執行。不一樣平臺有不一樣的JVM,主流平臺都提供了JVM,因此Java字節碼能夠在主流平臺上可以解釋執行。在這個意義上Java是跨平臺的,也就是說:Java的字節碼是跨平臺的。

 

6.請列舉一些Java中比較常見的包以及做用。

java.lang包:這個包中包含了jdk提供的基礎類,好比String等都是這裏面的,這個包是惟一一個不用導入就可使用的包;

java.io包:包含了與輸入輸出相關的類;好比文件操做等

java.net包:包含了與網絡相關的類,好比URL,URLConnection等

java.util包:這個是系統輔助類,特別是集合類Collection,List,Map等。

java.sql包:數據庫操做的類,Connection,Statement,ResultSet等。

 

7.安裝JDK後須要配置環境變量麼?須要配置那些環境變量?具體怎麼配置?

安裝JDK後須要配置環境變量,若是不配置環境變量,在控制檯使用Java命令會提示命令未找到。須要配置系統Path和CLASSPATH變量。在系統Path原變量值前加入JDK的bin目錄的路徑,並在最後加入分號。CLASSPATH變量在JDK5後能夠省略,由於JDK5後會自動在當前路徑下尋找Java類。可是在JDK5以前須要在CLASSPATH變量中添加「.」以及JDK中lib目錄下的dt.jar和tools.jar的路徑,中間使用分號分隔,「.」表明的是當前目錄,編譯Java程序須要dt.jar和tools.jar這兩個工具包,因此也須要加入CLASSPATH環境變量。

相關文章
相關標籤/搜索