前言:
春招馬上就要來了,準備了一些大廠面試題分享給大家,希望可以幫助到大家,不會做的不要急哦文末有答案分享,以及面試寶典pdf分享給大家
1、面向對象的特徵有哪些方面?
2、訪問修飾符public,private,protected,以及不寫(默認)時的區別?
3、String是最基本的數據類型嗎?
4、float f=3.4;是否正確?
5、short s1 = 1; s1 = s1 + 1;有錯嗎?short s1 = 1; s1 += 1;有錯嗎?
6、Java有沒有goto?
7、int和Integer有什麼區別?
8、&和&&的區別?
9、解釋內存中的棧(stack)、堆(heap)和方法區(method area)的用法。
10、Math.round(11.5) 等於到大家多少?Math.round(-11.5)等於多少?
11、switch是否能作用在byte上,是否能作用在long上,是否能作用在String上?
12、用最有效率的方法計算2乘以8?
13、數組有沒有length()方法?String有沒有length()方法?
14、在Java中,如何跳出當前的多重嵌套循環?
15、構造器(constructor)是否可被重寫(override)?
16、兩個對象值相同(x.equals(y) == true),但卻可有不同的hash code,這句話對不對?
17、是否可以繼承String類?
18、當一個對象被當作參數傳遞到一個方法後,此方法可改變這個對象的屬性,並返回變化後的結果,那麼這裏到底是值傳遞還是引用傳遞?
19、String和StringBuilder、StringBuffer的區別?
20、重載(Overload)和重寫(Override)的區別。重載的方法能否根據返回類型進行區分?
21、描述一下JVM加載class文件的原理機制?
22、char 型變量中能不能存貯一箇中文漢字,爲什麼?
23、抽象類(abstract class)和接口(interface)有什麼異同?
24、靜態嵌套類(Static Nested Class)和內部類(Inner Class)的不同?
25、Java中會存在內存泄漏嗎?請簡單描述。
26、抽象的(abstract)方法是否可同時是靜態的(static),是否可同時是本地方法(native),是否可同時被synchronized修飾?
27、闡述靜態變量和實例變量的區別。
28、是否可以從一個靜態(static)方法內部發出對非靜態(non-static)方法的用?
29、如何實現對象克隆?
30、GC是什麼?爲什麼要有GC?
31、String s = new String("xyz");創建了幾個字符串對象?
32、接口是否可繼承(extends)接口?抽象類是否可實現(implements)接口?象類是否可繼承具體類(concrete class)?
33、一個".java"源文件中是否可以包含多個類(不是內部類)?有什麼限制?
34、Anonymous Inner Class(匿名內部類)是否可以繼承其它類?是否可以實現口?
35、內部類可以引用它的包含類(外部類)的成員嗎?有沒有什麼限制?
36、Java 中的final關鍵字有哪些用法?
37、指出下面程序的運行結果。
class A {
static {
System.out.print("1");
}
public A() {
System.out.print("2");
}
}
class B extends A {
static {
System.out.print("a");
}
public B() {
System.out.print("b");
}
}
public class Hello {
public static void main(String[] args) {
A ab = new B();
ab = new B();
}
}
38、數據類型之間的轉換
39、如何實現字符串的反轉及替換?
40、怎樣將GB2312編碼的字符串轉換爲ISO-8859-1編碼的字符串?
41、日期和時間
如何取得年月日、小時分鐘秒?
如何取得從1970年1月1日0時0分0秒到現在的毫秒數?
如何取得某月的最後一天?
如何格式化日期?
42、比較一下Java和JavaSciprt。
43、什麼時候用斷言(assert)?
44、Error和Exception有什麼區別?
45、try{}裏有一個return語句,那麼緊跟在這個try後的finally{}裏的代碼會不會被執行,什麼時候被執行,在return前還是後?
46、Java語言如何進行異常處理,關鍵字:throws、throw、try、catch、finally分別如何使用?
47、運行時異常與受檢異常有何異同?
48、列出一些你常見的運行時異常?
49、闡述final、finally、finalize的區別。
50、類ExampleA繼承Exception,類ExampleB繼承ExampleA。
51、List、Set、Map是否繼承自Collection接口?
52、闡述ArrayList、Vector、LinkedList的存儲性能和特性。
53、Collection和Collections的區別?
54、List、Map、Set三個接口存取元素時,各有什麼特點?
56、TreeMap和TreeSet在排序時如何比較元素?Collections工具類中的sort()方法如何比較元素?
57、Thread類的sleep()方法和對象的wait()方法都可以讓線程暫停執行,它們有什麼區別?
58、線程的sleep()方法和yield()方法有什麼區別?
59、當一個線程進入一個對象的synchronized方法A之後,其它線程是否可進入此對象的synchronized方法B?
60、請說出與線程同步以及線程調度相關的方法。
61、編寫多線程程序有幾種實現方式?
62、synchronized關鍵字的用法?
63、舉例說明同步和異步。
64、啓動一個線程是調用run()還是start()方法?
65、什麼是線程池(thread pool)?
66、線程的基本狀態以及狀態之間的關係?
讀者福利:
由於篇幅限制,需要面試題答案的關注我的供種號【Java周某人】即可領取哦,另外我整理了一份近千道面試題文檔資料分享給大家,希望要跳槽面試的人都可以得到幫助,升職加薪走向人生巔峯。