更新時間:2023-02-07 16:20:01 來源:動力節點 瀏覽1535次
一、finalize方法是干什么的?
finalize是GC垃圾回收器自己調用的方法、用來回收沒有指向的內存空間
二、4種訪問權限分別是什么?
private、default(默認)、protected、public
三、說一下你對異常的理解
異常的話有一個父類叫throwable、他下面有兩個子類分別是error和exception
error指的是錯誤、表示程序出現了一種無法避免和恢復的嚴重錯誤;exception表示的是異常、它下面有兩個子類、分別是運行時異常(RuntimeException)和非運行時異常:運行時異常大多是因為程序員編寫的代碼出現邏輯問題引起等、是由程序員造成的;而運行時異常以外的異常都是非運行時異常、也是必須去處理的異常、如果不處理編譯都不會通過;
四、循環中break、continue、return關鍵字的作用?
break表示的是跳出循環;continue表示的是跳出當前循環進入下一次循環、return表示的是結束一個函數;
五、final、finally、finalize分別是什么?
final指的是最終的意思、final修飾的類不能被繼承;final修飾的成員變量必須對其初始化賦值、final修飾的方法不能被重寫、final修飾基本數據類型一旦賦值不能改變、final修飾的引用類型其地址值不能改變、但對象里的值可以改變
finally一般搭配try,catch語句塊共同使用、finally后面的語句塊必須執行;
finalize是一個方法,是GC垃圾回收器在回收沒有引用的內存空間是會調用,是自己調用,不是人為調用的。
六、throw和throws的區別
throw一般是在方法中使用,throw后只能跟一個異常對象名,表示拋出異常讓方法內的語句塊去處理這個異常
throws是寫在方法名后,后面可以跟多個異常類名、中間用逗號隔開、表示拋出異常、讓方法的調用者去處理這個異常、并不是真正的去處理該異常
七、什么是數組?
數組指的是用來存儲同一種數據類型的多個元素的集合、它可以存儲基本數據類型、也可以存儲引用數據類型、數組是一種簡單的數據結構、線性結構、數組的長度一旦確定不可改變、數組是一種引用數據類型
八、數組的初始化方式有哪些?
有靜態初始化和動態初始化,靜態初始化是為數組中的元素依次賦值;動態初始化是為數組的長度賦值,數組中的元素系統為其賦默認值;
九、如何在控制臺輸出語句?
Scanner scanner = new Scanner();
String next = scanner.next();
System.out.println(next);
十、數組的擴容是如何實現的?
數組的擴容是數組拷貝來實現的;
system.arraycopy(被拷貝的數組名、從下標為幾開始拷貝、拷貝到的數組名、從下標為幾開始拷貝、拷貝的長度);
十一、數組的排序有哪些?
選擇排序和冒泡排序;
選擇排序是第一個元素依次和后面元素進行比較,選出最小的元素放到第一個位置;
冒泡排序是相鄰兩個元素進行比較,找出最大的元素放到最后面
十二、數組的二分法查找是什么?有哪些條件?
數組的二分法查找是為了快速定位到數組中元素所在的位置;
必須要滿足以下兩個條件:
1、數組中的元素必須按順序排列
2、數組中不能包含有重復元素
十三、String類的特點?
String類不能被繼承,因為被final修飾了;
字符轉一旦創建好、其在字符串常量池中的內容不能改變
十四、什么是正則表達式
正則表達式的主要作用是為了檢驗字符串是否滿足某種規格
十五、String和StringBuffer的區別?
String是不可變字符序列、存儲在字符串常量池中;
StringBuffer是字符串緩沖區、如果頻繁對字符串進行拼接時、建議使用stringbuffer、stringbuffer底層是char類型數組、默認長度為16
十六、StringBuffer和StringBuild的區別?
stringbuffer在stringbuild的基礎上加上了synchronized關鍵字;
相比較而言、stringbuffer是線程安全的、效率要稍低一些;
StringBuild是線程不安全的、相比較效率要更高一些
以上就是“就業市場中比較全面的Java權限管理面試題”,你能回答上來嗎?如果想要了解更多的Java面試題相關內容,可以關注動力節點Java官網。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習