日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

京东Java面试题、笔试题(含答案)

發布時間:2024/8/1 java 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 京东Java面试题、笔试题(含答案) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

其他互聯網大廠面試題

1:阿里巴巴Java面試題

2:阿里云Java面試題-實習生崗

3:騰訊Java面試題-高級

4:字節跳動Java面試題

5:字節跳動Java面試題-大數據方向

6:百度Java面試題

7:螞蟻金服Java面試題-中級

8:螞蟻金服Java面試題-高級

9:京東Java面試題-中級

10:拼多多Java面試題-電商部

11:商湯科技Java面試題

12:中軟國際Java面試題-初級

13:唯品會Java面試題

14:攜程Java面試題-高級

15:軟通動力Java面試題


下載鏈接全部大廠面試題及答案PDF

1、哪些情況下的對象會被垃圾回收機制處理掉?

利用可達性分析算法,虛擬機會將一些對象定義為 GC Roots,從 GC Roots 出發沿著引用鏈向下尋找,如果某個對象不能通過 GC Roots 尋找到,虛擬機就認為該對象可以被回收掉。

2、哪些對象可以被看做是 GC Roots 呢?

1)虛擬機棧(棧幀中的本地變量表)中引用的對象;

2)方法區中的類靜態屬性引用的對象,常量引用的對象;

3)本地方法棧中 JNI(Native 方法)引用的對象;

3、對象不可達,一定會被垃圾收集器回收么?

即使不可達,對象也不一定會被垃圾收集器回收,1)先判斷對象是否有必要執行 finalize() 方法,對象必須重寫 finalize()方法且沒有被運行過。2)若有必要執行,會把對象放到一個隊列中,JVM 會開一個線程去回收它們,這是對象最后一次可以逃逸清理的機會。

4、講一下常見編碼方式?

編碼的意義:計算機中存儲的最小單元是一個字節即 8bit,所能表示的字符范圍是 255 個, 而人類要表示的符號太多,無法用一個字節來完全表示,固需要將符號編碼,將各種語言翻譯成計算機能懂的語言。

1)ASCII 碼:總共 128 個,用一個字節的低 7 位表示,0?31 控制字符如換回車刪除等;32~126是打印字符,可通過鍵盤輸入并顯示出來;

2)ISO-8859-1,用來擴展 ASCII 編碼,256 個字符,涵蓋了大多數西歐語言字符。

3)GB2312:雙字節編碼,總編碼范圍是 A1-A7,A1-A9 是符號區,包含 682 個字符,B0-B7 是漢字區,包含 6763 個漢字;

4)GBK 為了擴展 GB2312,加入了更多的漢字,編碼范圍是 8140~FEFE,有 23940 個碼位,能表示 21003 個漢字。

5)UTF-16: ISO 試圖想創建一個全新的超語言字典,世界上所有語言都可通過這本字典Unicode 來相互翻譯,而 UTF-16 定義了 Unicode 字符在計算機中存取方法,用兩個字節來表示 Unicode 轉化格式。不論什么字符都可用兩字節表示,即 16bit,固叫 UTF-16。

6)UTF-8:UTF-16 統一采用兩字節表示一個字符,但有些字符只用一個字節就可表示,浪費存儲空間,而 UTF-8 采用一種變長技術,每個編碼區域有不同的字碼長度。 不同類型的字 符 可 以 由 1~6 個 字 節 組成。

5、utf-8 編碼中的中文占幾個字節;int 型幾個字節?

utf-8 是一種變長編碼技術,utf-8 編碼中的中文占用的字節不確定,可能 2 個、3 個、4 個,
int 型占 4 個字節。

6、靜態代理和動態代理的區別,什么場景使用?

代理是一種常用的設計模式,目的是:為其他對象提供一個代理以控制對某個對象的訪問, 將兩個類的關系解耦。代理類和委托類都要實現相同的接口,因為代理真正調用的是委托類的方法。

區別:

1)靜態代理:由程序員創建或是由特定工具生成,在代碼編譯時就確定了被代理的類是哪一個是靜態代理。靜態代理通常只代理一個類;

2)動態代理:在代碼運行期間,運用反射機制動態創建生成。動態代理代理的是一個接口下的多個實現類;

實現步驟:

a. 實現 InvocationHandler 接口創建自己的調用處理器;

b. 給 Proxy 類提供ClassLoader 和代理接口類型數組創建動態代理類;

c.利用反射機制得到動態代理類的構造函數;d.利用動態代理類的構造函數創建動態代理類對象;

使用場景:Retrofit 中直接調用接口的方法;Spring 的 AOP 機制;

7、Java 的異常體系

Java 中 Throwable 是所有異常和錯誤的超類,兩個直接子類是 Error(錯誤)和 Exception(異常):

1)Error 是程序無法處理的錯誤,由 JVM 產生和拋出,如 OOM、ThreadDeath 等。這些異常發生時,JVM 一般會選擇終止程序。

2)Exception 是程序本身可以處理的異常,又分為運行時異常(RuntimeException)(也叫Checked Eception) 和 非 運 行 時 異 常 ( 不 檢 查 異 常 Unchecked Exception) 。 運 行 時異 常 有 NullPointerException\IndexOutOfBoundsException 等,這些異常一般是由程序邏輯錯誤引起的,應盡可能避免。非運行時異常有IOException\SQLException\FileNotFoundException 以及由用戶自定義的 Exception 異常等。

8、談談你對解析與分派的認識。

解析指方法在運行前,即編譯期間就可知的,有一個確定的版本,運行期間也不會改變。解 析是靜態的,在類加載的解析階段就可將符號引用轉變成直接引用。

分派可分為靜態分派和動態分派,重載屬于靜態分派,覆蓋屬于動態分派。靜態分派是指在 重載時通過參數的靜態類型而非實際類型作為判斷依據,在編譯階段,編譯器可根據參數的 靜態類型決定使用哪一個重載版本。動態分派則需要根據實際類型來調用相應的方法。

9、修改對象 A 的 equals 方法的簽名,那么使用 HashMap 存放這個對象實例的時候,會調用哪個 equals 方法?

會調用對象的 equals 方法,如果對象的 equals 方法沒有被重寫,equals 方法和==都是比較棧內局部變量表中指向堆內存地址值是否相等。

10、Java 中實現多態的機制是什么?

11、如何將一個 Java 對象序列化到文件里?

12、說說你對 Java 反射的理解

13、說說你對 Java 注解的理解

14、說一下泛型原理,并舉例說明

15、Java 中 String 的了解

16、String 為什么要設計成不可變的?

下載鏈接博主已將以上這些大廠面試題整理成了一個面試手冊,是PDF版的

總結

以上是生活随笔為你收集整理的京东Java面试题、笔试题(含答案)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。