Java 習題1 參考答案及解析
1.問答題
(1).Java語言的主要貢獻者是誰?
(2)開發Java應用程式需要經過哪些主要步驟?
(3)Java原始檔是由什麼組成的?一個原始檔中必須要有public類嗎?
(4)如果JDK的安裝目錄是D:\jdk,應當怎樣設定path和classpath的值?
(5)Java原始檔的副檔名是什麼?Java位元組碼的副檔名是什麼?
(6)如果Java應用程式主類的名字是Bird,編譯之後,應當怎樣執行程式?
(7)有哪兩種程式設計風格,在格式上各有怎樣的特點?
答案及其解析:
(1)James Gosling
(2)需要三個步驟:1.用文字編輯器編寫原始檔2.使用javac編譯原始檔得到位元組碼檔案3.使用直譯器執行程式
(3)原始檔由若干個類構成,對於應用程式,必須有一個類含有public static void main(String args[])方法,含有該方法的類稱為應用程式的主類。不一定要有public類,但最多有一個Public類
(4)關於環境變數的設定問題可看教材的1.3.3
Path變數要新增D:\jdk\bin,classpath變數新增D:\jdk\jre\lib\rt.jar;.;要注意這個.代表的是應用程式的當前目錄和其子目錄中的類
(5)java和class
(6)Java Bird
(7)獨佔風格(大括號獨佔行)和行尾風格(左大括號在上一行行尾,右大括號獨佔)
2.選擇題
(1)下列哪個是JDK提供的編譯器?
A.java.exe B.javac.exe C.javap.exe D.javaw.exe
(2) 下列哪個是Java應用程式主類中正確的main方法?
A.public void main(String args[])
B.static void main(String args[])
C.public static void Main(String args[])
D.public static void main(String args[])
1.B 2.D非常基礎的題,不細講了
3.閱讀程式
閱讀下列Java原始檔,並回答問題
public class Person{
void speakHello(){
System.out.println("您好,很高興認識你");
System.out.println("nice to meet you");
}
}
class Xiti{
public static void main(String args[]){
Person zhang = new Person();
zhang.speakHello();
}
}
(1)上述原始檔的名字是什麼?
(2)編譯上述原始檔將生成幾個位元組碼檔案?這些位元組碼檔案的名字都是什麼?
(3)在命令列執行java Person得到怎樣的錯誤提示?執行java xiti得到怎樣的錯誤提示?執行java Xiti.class得到怎樣的錯誤提示?得到java Xiti得到怎樣的輸出結果?
答案解析:
(1)上述原始檔裡含有兩個類一個為Person類一個為Xiti類,其中Person類帶public(有且只有一個),原始檔的名字要求與帶public的類名字相同,字尾為.java,所以答案為:Person.java
(2)兩個位元組碼檔案,分別是Person.class和Xiti.class
(3)執行java Person會產生“NoSuchMethodErrror”異常,這是因為Person中沒有主方法,第二個出錯的原因在於Java區分大小寫的,原本大寫的X寫成小寫必定是錯誤的。第三個會產生NoClassDefFoundError:Xiti/class提示,因為要求java後面只輸入位元組碼檔名即可,不要畫蛇添足。最後一個產生正常的結果
您好,很高興認識您
nice to meet you