原创 Java1.7增加switch對字符串的支持

Java1.7之前switch只能侷限於int 、short 、byte 、char四類做判斷條件。在JVM內部實際大部分字節碼指令只有int類型的版本。在使用switch的時候,如果是非int型,會先轉爲int型,再進行條件判斷。Jav

原创 getResourceAsStream的簡單用法

InputStream is = this.getClass().getResourceAsStream(fileName); //包路徑下獲取資源InputStream is = this.getClass().getResource

原创 String的hashCode算法的解讀

注:出處不明public int hashCode() { int h = hash; if (h == 0 && value.length > 0) { char val[] = value;

原创 如何獲得Object類native方法的原生hashcode

System.identityHashCode():用於根據對象在內存中的地址算出來的一個數值。Object類原生的native方法hashCode()與System.identityHashCode()得出的值是一樣的。如果我們重寫了某

原创 webApplicationContext與ServletContext的關係

注:時間久遠,出處不詳

原创 HP大中華區總裁孫振耀退休感言

一、關於工作與生活 我有個有趣的觀察,外企公司多的是25-35歲的白領,40歲以上的員工很少,二三十歲的外企員工是意氣風發的,但外企公司40歲附近的經理人是很尷尬的。我見過的40歲附近的外企經理人大多在一直跳槽,最後大多跳到民企,比方

原创 Java多線程小結

死鎖:企圖搶奪對方所持有的鎖,誰都不先讓,陷入死結。(保證統一的加鎖解鎖順序可以避免)飢餓:由於優先級低等原因,一直搶不到鎖而導致無法運行。活鎖:譬如2個線程都發現對方有自己需要的鎖,就主動釋放鎖給對方。結果雙方都在謙讓,以至於都在做讓鎖

原创 Java動態代理的簡單示例

1. 需要一個接口,用於定義被代理的行爲。不使用接口不行。2. InvocationHandler接口的invoke方法有3個參數,分別是被代理對象、被執行的接口方法、方法參數3. Proxy.newInstance的參數分別是被代理對象

原创 Java反射的API小結

類對象的獲取:1. 直接使用Person.class2. obj.getClass()3. Class.forName("xxx");獲取方法:getMethods獲取所有包含父類的public方法getMethod獲取指定包含父類的pu

原创 Java面試通關要點彙總集

文章目錄1. 基礎篇1.1. 基本功1.2. 集合1.3. 線程1.4. 鎖機制2. 核心篇2.1. 數據存儲2.2. 緩存使用2.3. 消息隊列3. 框架篇3.1. Spring3.2. Netty4. 微服務篇4.1. 微服務4.2.

原创 Java基礎常識(適用於面試)

八大數據類型的對應類裏有常量表示類型的最大值最小值等取值範圍局部變量不能被聲明爲 static 變量final 對象的引用不能改變,但是裏面的值可以改變類中的 final 方法可以被子類繼承,但是不能被子類修改final 類不能被繼承如果

原创 Java中String#split的坑

String str = "a,b,c,,"; String[] ary = str.split(","); // 預期是5,結果是 3 System.out.println(ary.length);所以,對於String的split方法

原创 如何實現自定義hashcode和equals方法

當需要自己實現hashCode()和equals()方法時,可以藉助Apache Commons包的工具類:EqualsBuilder和HashCodeBuilder

原创 Java 中的中文編碼問題(非常詳細)

只要有跨應用數據交換的地方,都可能產生編碼和解碼。出現亂碼問題唯一的原因都是在 char 到 byte 或 byte 到 char 轉換中編碼和解碼的字符集不一致導致的。幾個常用的類:String name = "I am 君山"; b

原创 基於泛型的PECS原則

PECS(Producer Extends Consumer Super)原則: 第一、 頻繁往外讀取內容的,適合用<? extends T>。 第二、 經常往裏插入的,適合用<? super T>。我們知道Java泛型可以有多種寫法,主