當前位置:才華齋>計算機>java語言>

Java原理面試題

java語言 閱讀(2.31W)

引導語:Java的主要工作是通過程式語言來製作網際網路頁面、製作動態效果以及網站等技術,以下是小編整理的Java原理面試題,歡迎參考閱讀!

Java原理面試題

  1、JVM使用哪種字元表示?( B)

A、ASCII characters B、Unicode characters

C、Cp1252 D、UTF-8

解析

在Java中字元只以一種形式存在,那就是Unicode(不選擇任何特定的編碼,直接使用它們在字符集中的編號,只是統一的唯一方法)。

“在Java中”是指在JVM中、在記憶體中、在你的程式碼裡宣告的每一個char、String型別的變數中。例如,你可以在程式中這樣寫:

charc = ‘永’;

在記憶體的相應區域,這個自負就表示為0x6c38,可以用下面的程式碼證明

charc = ‘永’;

at(“%x”, (short)c);

輸出是6c38.反過來用Unicode編號來指定一個字元也可以,像這樣:

char c = 0x6c38;

tln(c);

輸出是:永。

  2、Java語言是從(B )語言改進重新設計的。

A、BASIC B、C++ C、Pascal D、Ada

解析

對於選項A,BASIC語言是一種為了讓使用者容易控制計算機開發的語言,其特點是簡單易懂,且可以用解釋和編譯兩種方法執行。

對於選項B,C++語言是一種靜態資料型別檢查的`、支援多重程式設計正規化的通用程式設計語言,它支援過程話程式設計、資料抽象、面向物件程式設計、泛型程式設計等多種程式設計風格。

對於選項C,Pascal語言是為提倡結構化程式設計而發明的語言。

對於選項D,Ada語言是美國軍方為了整合不同語言開發的系統而發明的一種語言,其最大的特點是實時性,在Ada95中已加入面向物件內容。

Java語言是一種面嚮物件語言,從語法結構上看,與C++語言類似。

  3、String是最基本的資料型別嗎?

答:不是。Java中的基本資料型別只有8個:byte、short、int、long、float、double、char、boolean;除了基本型別(primitivetype)和列舉型別(enumerationtype),剩下的都是引用型別(referencetype)。

  4、floatf=3.4;是否正確?

答:不正確。3.4是雙精度數,將雙精度型(double)賦值給浮點型(float)屬於下轉型(down-casting,也稱為窄化)會造成精度損失,因此需要強制型別轉換floatf=(float)3.4;或者寫成floatf=3.4F;。

  5、shorts1=1;s1=s1+1;有錯嗎?shorts1=1;s1+=1;有錯嗎?

答:對於shorts1=1;s1=s1+1;由於1是int型別,因此s1+1運算結果也是int型,需要強制轉換型別才能賦值給short型。而shorts1=1;s1+=1;可以正確編譯,因為s1+=1;相當於s1=(short)(s1+1);其中有隱含的強制型別轉換。