java面試題100道(1-20)

注:所有答案憑個人理解作答,不可用作標準答案。

1.一個java文件中是否可以包含多個類(不是內部類)?有什麼限制?

答:可以有多個類,但是隻能有一個public .

2.Java有沒有goto?

答:gotojava的保留字,不是關鍵字,可以說是以後可能會啓用。

3.說說&和&&的區別?

答:&是按位與,兩邊都要執行,而&&是邏輯與,執行一遍也可以,即短路與的功能

4.在java中如何跳出當前的多重嵌套循環?

答:break aim;  //aim是個標記,放在最外面循環的開始位置。

例如:

aim for(....){

for(...){

  break aim;

}

}

5.switch語句能否作用在byte上?能否作用在long上?能否作用在String上?

答:switch可以作用在byte上,但是不能作用在long上,之前不能作用在String,最新的jdk可以了。

6.short  s1=1;s1=s1+1;有什麼錯?short s1=1;s1+=1;有什麼錯?

答:s1+1默認是int類型的,向下要進行強制轉換

7.cha類型變量能不能存儲一個漢字?爲什麼?

答:char類型可以存儲一個漢字,因爲char是兩個字節,漢字也是兩個字節

8.用最有效的方法算出2*8等於幾?

答:2<<3

10.使用final修飾一個變量時,是引用不能變,還是引用的對象不能變?

答:引用不能改變

11.“==”和equal方法究竟有什麼區別?

答:==對於對象比較的是內存地址,而equals默認比較的是地址。而平時用的String.equals是已經重寫過equals

12.靜態變量和實例變量究竟有什麼區別?

答:static變量是對象共有的屬性,可以用類直接去訪問。而實例變量每個對象的都可以不同,必須通過對象.屬性進行訪問。

13:是否可以從一個static方法內部發出對非static方法的調用?

答:不可以

14.Integer於int的區別?

答:integerint的包裝類,完成對int操作的一些方法,常見的就是一些類型的轉換。例如int a=0String s=Integer.toString(a);

15.Math.round(11.5)等於多少?math.round(-11.5)等於多少?

答:12-11.網上看到一種便於記憶的方法是小數點後一位 大於5或小於5,按正常的四捨五入就行。當等於5的時候,正數則個位加1,負數則個位不變

16.請說明作用於public、private、protected、以及不寫時的區別?

答:           類內部  同一包內 子類  外部類

Private       v

Default      v             v

Protected  v              v               v

Public         v         v                v       v

17overload和override的區別。overload的方法是否可以改變返回值的類型?

答:overload 是重載,參數類型或者個數不同。Override是複寫,參數和返回類型都相同。overload改變返回值也可以但是參數必須改變。

18.搞了多個重載方法,參數分別是int,char,和double然後將double x=2,傳遞進去,會選擇哪個方法?

答:調用的是 double參數的方法,如果調用 方法名(2,則默認調用的是int參數的方法

19.classloader如何加載class?

答:.Classloader是父類委託機制,如果一個類有父類,則先加載該類的父類。實際上classloader先加載java核心api,再加載擴展api

20.arraylist如何實現插入的數據按自定義的方式有序存放?

答:先讓該類實現compareable接口,再通過collections.sort(list)就可以實現對其按自定義方式進行排序。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章