Java面試題小結

Java面試題小結:

對面向對象的理解:

OOP是面向對象編程,特徵分別是封裝、繼承、多態、抽象。
封裝:封裝是指將對象信息狀態通過訪問權限修飾符隱藏在對象內部,不允許外部程序直接訪問,對外提供的get或set方法訪問。(作用:簡化開發,提升開發效率)
繼承:子類繼承了父類所有的成員方法和屬性,並且可以擁有自己特性。繼承解決了代碼的重用問題。
多態:多態存在的三個條件 1.繼承2.重寫3.父類引用指向子類對象
多態的實現方式1.接口實現,繼承父類方法重寫,同一個類中進行重載

重載與重寫的:

他們都是實現多態的方式。

  • 重載:方法名相同,參數不同(個數/類型)
    在調用方法時通過傳遞給它們的不同參數個數和參數類型來決定具體使用哪個方法, 這就是多態性,存在於父類和子類、同類中。
  • 重寫:
  1. 參數列表必須完全與被重寫的方法相同
  2. 返回的類型必須一直與被重寫的方法的返回類型相同
  3. 訪問修飾符的限制一定要大於被重寫方法的訪問修飾符
  4. 重寫方法一定不能拋出新的檢查異常或者比被重寫方法申明更加寬泛的檢查型異常
  5. 存在於父類和子類之間,方法被定義爲final不能被重寫。

(JDBC)事務的特性:

概念:事務是指一組操作,要麼都執行成功,要麼都執行失敗。

  1. 原子性:一組操作,要麼都執行成功,要麼都執行失敗。
  2. 隔離性:在所有操作未完成之前,其他回話是不能看到中間過程的。
  3. 一致性:事物發生和發生後的總金額依然匹配。
  4. 持久性:事務產生的影響是不能撤銷的。

事務處理的核心意義:
將一系列操作放在一個事務下進行管理,正常情況全部執行,如果有異常出現,則回滾事務。

簡述TCP UDP IP:

在這裏插入圖片描述
在這裏插入圖片描述

  1. I P是T C P / I P協議族中最爲核心的協議。所有的 T C P、U D P、I C M P及I G M P數據都以I P數據 報格式傳輸 ;IP數據報傳送 服務 具有不可靠性、無連接性。
  2. UDP是無連接的、面向報文的一對一、一對多、多對一、多對多的交互通信的不可靠傳輸協議。
  3. TCP是一種面向連接的、可靠的字節流傳輸協議。

對三次握手四次揮手的理解:

在這裏插入圖片描述
三次握手的原因

第三次握手是爲了防止失效的連接請求到達服務器,讓服務器錯誤打開連接。
客戶端發送的連接請求如果在網絡中滯留,那麼就會隔很長一段時間才能收到服務器端發回的連接確認。客戶端等待一個超時重傳時間之後,就會重新請求連接。但是這個滯留的連接請求最後還是會到達服務器,如果不進行三次握手,那麼服務器就會打開兩個連接。如果有第三次握手,客戶端會忽略服務器之後發送的對滯留連接請求的連接確認,不進行第三次握手,因此就不會再次打開連接。
在這裏插入圖片描述
四次揮手的原因
客戶端發送了 FIN 連接釋放報文之後,服務器收到了這個報文,就進入了 CLOSE-WAIT 狀態。這個狀態是爲了讓服務器端發送還未傳送完畢的數據,傳送完畢之後,服務器會發送 FIN 連接釋放報文。

SpringMVC的流程:

在這裏插入圖片描述

  1. 用戶向服務端發送一次請求,這個請求會先到前端控制器DispatcherServlet(也叫中央控制器)。
  2. DispatcherServlet接收到請求後會調用HandlerMapping處理器映射器。由此得知,該請求該由哪個Controller來處理(並未調用Controller,只是得知)
  3. DispatcherServlet調用HandlerAdapter處理器適配器,告訴處理器適配器應該要去執行哪個Controller
  4. HandlerAdapter處理器適配器去執行Controller並得到ModelAndView(數據和視圖),並層層返回給DispatcherServlet
  5. DispatcherServlet將ModelAndView交給ViewReslover視圖解析器解析,然後返回真正的視圖。
  6. DispatcherServlet將模型數據填充到視圖中
  7. DispatcherServlet將結果響應給用戶

對Mybatis理解

在這裏插入圖片描述

參考及引用源自:

  1. TCP、UDP、IP詳解:https://blog.csdn.net/zpoison/article/details/86528327
  2. springmvc工作流程:https://www.cnblogs.com/hamawep789/p/10840774.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章