Java開發常見入坑面試題總結

      網友投稿 835 2025-04-02

      一、抽象類和接口的使用場景


      抽象類的使用場景:

      1、既想約束子類有共同的行為,又想擁有自己的方法,又能擁有實例變量

      接口的應用場景:

      約束多個類擁有統一的行為,但是不在乎每一個類是如何實現的。

      作為能夠實現特定功能的標識存在,或者是什么都不做的純粹的標識

      實現類具備很多不同的功能,但是這些功能沒有什么聯系

      使用接口的引用調用具體實現類的方法

      二、抽象類和接口的區別?

      1、抽象類對變量沒有限制,接口只能包含常量

      2、抽象類擁有構造方法,接口沒有構造方法

      3、抽象類中的方法可以是抽象的,也可以不是抽象的,但是接口中的方法必須是public abstract的,

      三、如何進行單元測試

      在代碼編寫完成之后,進行單元測試主要分為兩個步驟:

      人工靜態檢查

      該階段主要保證代碼算法的正確性和邏輯性,盡可能的發現程序中沒有發現的錯誤。

      動態執行跟蹤

      執行待測程序,將實際運行結果和預期結果進行比較,發現其中存在的錯誤

      四、如何實現低耦合?

      1、少用繼承,多用接口隱藏實現的細節

      2、模塊的功能設計盡可能的單一

      3、遵循一個定義只在一個地方出現

      4、少用全局變量

      Java開發常見入坑面試題總結

      5、類中的屬性和方法少用public,多用private

      6、少用“硬編碼”,盡量避免直接使用sql語句操作數據庫

      7、盡量減少模塊直接操作或調用其他模塊,

      8、盡量使用數據耦合,少用控制耦合,限制公共耦合的范圍,不用內容耦合

      五、聚集索引和非聚集索引的區別?

      聚集索引:該索引中鍵值的邏輯順序決定了表中相應行的物理順序

      聚集索引的使用情況:

      列經常被分組排序

      返回某范圍內的數據

      數據列中的數據基本不同

      主鍵列和外鍵列

      非聚集索引:數據存儲在一個地方,索引存儲在另一個地方,索引的指針指向數據的存儲位置

      非聚集索引的使用情況:

      列經常用分組排序

      頻繁更新的列

      主鍵列和外鍵列

      頻繁修改索引列

      六、Springboot中的容器有什么用?

      1、添加組件(@configtion、@bean、Component、@Controller、@Service、@Repository)

      2、導入xml配置文件

      七、shiro中的token有什么用?是如何生成的?

      Token的使用比session更有用,因為session過多的時候會占用服務器資源,而且在分布式系統中很難完成session的共享,

      Token和session的作用都是對用戶請求進行合法性認證。

      Token存放位置:

      Token會放置在請求頭中,在前后端分離的時代,服務器認證通過之后,會返回給客戶端一個token,在vue項目中,將這個token設置在全局cookie中,每次請求通過interceptors.request.use這個攔截,動態地為每個請求帶上剛剛那個token,

      Token的實現過程:

      1.用戶登錄校驗,校驗成功后就生成Token并返回給客戶端。

      2.客戶端收到數據后保存在客戶端的cookie中

      3.客戶端每次訪問API都從cookie中取出token并攜帶到服務器端。

      4.服務器端采用filter過濾器校驗請求攜帶的token。校驗成功則返回請求數據,校驗失敗則返回錯誤碼

      不存儲token,無論在緩存中或者數據庫中的驗證過程:在用戶登錄認證完成之后,服務器會向客戶端返回一個加了密的token,這個token是由用戶請求的部分信息、請求的URL、時間戳這三部分融合在一起形成的,在客戶端再次發送請求的時候,會重新根據請求的部分內容、請求的URL、時間戳生成一個新的token,然后將這個新的token和之前的token進行比較,如果相同則這次合法。這樣token不會占用存儲空間,而且加密的過程要比從數據庫中進行查詢快得多。

      八、vue和后臺交互時如何規范接口?

      一般常使用代理方式配置接口

      歡迎小伙伴們補充指正!

      我是灰小猿,我們下期見!

      Java Spring 數據庫

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:Excel中按出生日期快速計算年齡
      下一篇:管理系統市場排行與評估(選擇最優秀的管理系統)
      相關文章
      亚洲真人无码永久在线观看| 亚洲综合久久1区2区3区| 亚洲人和日本人jizz| 亚洲成av人片天堂网| 亚洲熟妇少妇任你躁在线观看无码| 亚洲国产无线乱码在线观看 | 亚洲免费中文字幕| 91亚洲视频在线观看| 亚洲中文字幕久在线| 亚洲免费电影网站| 亚洲视频在线观看2018| 久久亚洲国产成人影院| 最新亚洲春色Av无码专区| 国产 亚洲 中文在线 字幕| 亚洲乱码在线观看| 亚洲熟妇久久精品| 亚洲熟妇久久精品| 亚洲精品无码日韩国产不卡av| 亚洲日韩精品A∨片无码加勒比| 亚洲熟伦熟女专区hd高清| 亚洲男人的天堂网站| 亚洲a∨无码一区二区| 亚洲av无码不卡私人影院| 亚洲日韩在线中文字幕第一页| 久久久久国产成人精品亚洲午夜| 伊人久久大香线蕉亚洲五月天| 国产国拍精品亚洲AV片| 久久亚洲国产午夜精品理论片| 久久久久亚洲av无码专区蜜芽| 亚洲日本精品一区二区| 亚洲黄网站wwwwww| 亚洲an日韩专区在线| 亚洲精华国产精华精华液网站| 人人狠狠综合久久亚洲高清| 久久久久无码专区亚洲av| 国产亚洲人成无码网在线观看| 亚洲色图在线观看| 亚洲一区二区久久| 亚洲AV无码专区在线观看成人| 亚洲国产一成久久精品国产成人综合 | 亚洲av无码一区二区三区四区|