摘要:如何自己手寫一個熱加載熱加載在不停止程序運行的情況下,對類對象的動態替換簡述中的類從被加載到內存中到卸載出內存為止,一共經歷了七個階段加載驗證準備解析初始化使用卸載。并形成一個父子結構。 如何自己手寫一個熱加載 熱加載:在不停止程序運行的情況下,對類(對象)的動態替換 Java ClassLoader 簡述 Java中的類從被加載到內存中到卸載出內存為止,一共經歷了七個階段:加載、驗證...
摘要:塵少又來了,這次為大家帶來的,是可以自動換行的容器。連設置也都是無效。如果你確實需要限制寬高,那你可以多套一層,在內層設置即可。代碼點擊事件實例化把放到控件里去到此就結束了,塵少一貫的風格,就是這么簡單。 hi,塵少又來了,這次為大家帶來的,是View可以自動換行的容器。 類似于淘寶搜索時的推薦,首先我不知道淘寶的是否只支持文字,但是我的是任何View都支持的。看下效果先: 淘寶:sh...
摘要:是一個基于的緩存系統封裝,提供統一的和注解來簡化緩存的使用。提供了比更加強大的注解,可以原生的支持兩級緩存分布式自動刷新,還提供了接口用于手工緩存操作。緩存失效時間緩存的類型,包括。 之前一直在用Spring Cache進行接口數據的緩存,主要是Spring Cache在對具體key緩存失效時間的設置不是很方法,還要自己去擴展,無意中發現了阿里的JetCache。大部分的需求都能滿足,...
摘要:有的朋友抱怨他們在使用他們公司的閉源框架時看不到底層的源代碼。假設我們想在里查看第行的源代碼直接加左鍵進去是看不見源碼的。我們可以使用一個開源的工具通過反編譯來查看其源代碼。現在選中一個按,即可看到反編譯之后的源代碼。 有的朋友抱怨他們在使用他們公司的閉源框架時看不到底層的源代碼。那么可以嘗試使用一些Java反編譯工具。 下面我舉個例子介紹具體使用這些反編譯工具的步驟。 JAD 假設我...
摘要:因為符號可以匹配任意類型,因此可以處理任意類型的數據。因為原生態類型沒有限制,所以它很容易是集合混亂,換句話說,無界通配符是安全的而原生態類型不是安全的。 我們都知道無界通配符(unbounded wildcard) Set可以處理任意類型數據,原生態類型(raw type)Set也能處理任意類型數據,但是他們區別是什么呢。 1、關于Set的兩個要點。 因為符號?可以匹配任意類型,因...