原创 多線程面試題之原子性、可見性、有序性

面試官:“對java併發瞭解怎麼樣?”  應聘者:“還可以…”   面試官:“爲了保證線程安全,Java併發有哪幾個基本特性呢?”   應聘者:“有三條基本性質,原子性、可見性、有序性”   面試官:  “具體解釋下這三個特性?”   應

原创 JAVA面試題(8)

java基礎以及多個“比較” 1.Collections.sort排序內部原理 在Java 6中Arrays.sort()和Collections.sort()使用的是MergeSort,而在Java 7中,內部實現換成了TimSort,

原创 有哪些Java性能優化方法?

  面試官:“有性能優化經驗沒?”  應聘者:“有一點。”   面試官:“那你們從哪些方面做了優化?”   應聘者:“sql優化、JVM參數調優、JAVA代碼性能優化。。”   面試官:  “談談編寫Java代碼時有哪些優化方法?"  

原创 面試官:"談談分庫分表吧?"

    面試官:“有併發的經驗沒?”  應聘者:“有一點。”   面試官:“那你們爲了處理併發,做了哪些優化?”   應聘者:“前後端分離啊,限流啊,分庫分表啊。。”   面試官:"談談分庫分表吧?"   應聘者:“bala。bala。b

原创 [算法總結] 13 道題搞定 BAT 面試——字符串

1. KMP 算法 談到字符串問題,不得不提的就是 KMP 算法,它是用來解決字符串查找的問題,可以在一個字符串(S)中查找一個子串(W)出現的位置。KMP 算法把字符匹配的時間複雜度縮小到 O(m+n) ,而空間複雜度也只有O(m)。因爲

原创 談談MySQL支持的事務隔離級別,以及悲觀鎖和樂觀鎖的原理和應用場景?

在日常開發中,尤其是業務開發,少不了利用 Java 對數據庫進行基本的增刪改查等數據操作,這也是 Java 工程師的必備技能之一。做好數據操作,不僅僅需要對 Java 語言相關框架的掌握,更需要對各種數據庫自身體系結構的理解。今天這一講,作

原创 Java8 使用stream實現各種list操作

利用java8新特性,可以用簡潔高效的代碼來實現一些數據處理。 定義1個Apple對象: public class Apple { private Integer id; private String name;

原创 算法第四版-文字版-下載地址-Robert Sedgewick

下載地址:https://download.csdn.net/download/moshenglv/10777447 算法第四版,文字版,可複製,方便copy代碼 目錄: 第1章 基 礎 ....................... .

原创 橋接模式

講到繼承的時候,總是喜歡用一個例子來講解,那就是畫圖,這裏有一個畫筆,可以畫正方形、長方形、圓形(這個大家都知道怎麼做吧,我就不解釋了)。但是現在我們需要給這些形狀進行上色,這裏有三種顏色:白色、灰色、黑色。這裏我們可以畫出3*3=9中圖形

原创 java設計模式--抽象工廠模式

抽象工廠模式算是工廠相關模式的終極形態,如果完全理解了上一章的工廠方法模式,那麼抽象工廠模式就很好理解了。它與工廠方法唯一的區別就是工廠的接口裏是一系列創造抽象產品的方法,而不再是一個,而相應的,抽象產品也不再是一個了,而是一系列相關的產品

原创 精選20道Java代碼筆試題

  1、運算符優先級問題,下面代碼的結果是多少? public class Test { public static void main(String[] args) { int k = 0;

原创 JDK動態代理與CGLib動態代理相關問題

 導讀: 1、JDK動態代理原理是什麼?爲什麼不支持類的代理? 2、JDK動態代理實例 3、CGLib代理原理是什麼? 4、CGLib代理實例 5、JDK動態代理與CGLib代理的區別是什麼? 6、總結     注:閱讀本文之前可以先閱

原创 再也不用擔心面試官問你HashCode和equals了

結論 如果兩個對象相等,則hashcode()必須相等。 如果兩個對象相等,a.equals(b)==b.equals(a)==true 如果兩個對象有相同的hashcode值,他們也不一定是相等的。但若兩個對象相等,則hash

原创 【Java千問】你瞭解代理模式嗎?

代理模式詳解 1 什麼是代理模式? 一句話描述:代理模式是一種使用代理對象來執行目標對象的方法並在代理對象中增強目標對象方法的一種設計模式。 詳細描述: 1、理論基礎-代理模式是設計原則中的“開閉原則(對擴展開放、對修改關閉)”的具體實踐,

原创 深入理解Java 8 Lambda(類庫篇)

背景(Background) 自從lambda表達式成爲Java語言的一部分之後,Java集合(Collections)API就面臨着大幅變化。而 JSR 355(規定了 Java lambda 表達式的標準)的正式啓用更是使得 Java