原创 Java虛擬機學習---Mac下編譯openJDK 1.9

準備 1、安裝homebrew ,打開命令行工具: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/ins

原创 Java虛擬機學習---ClassLoader的思考

爲什麼會有雙親委派模型?     Java虛擬機在加載一個clas文件時,需要遵循一個流程,這個加載流程就是雙親委派模型,Java類加載器有三種:BootstrapClassLoader(啓動類加載器)、ExtClassLoader(擴展

原创 Day1.zsh簡介及配置(主題和插件)

  本篇博客主要解決以下問題:      1、zsh是什麼?oh my zsh是什麼?二者什麼關係?      1、zsh如何安裝以及使用絢麗主題。      2、如何使用功能豐富的插件。 一、zsh 和on my zsh        

原创 Day3-4.序列化之Serializable

    本篇博客主要解決以下問題:            1、Serializable是怎麼實現的?            2、Serializable中serialVersionUID的作用是什麼?爲什麼會有這個字段?        

原创 解決Mac Pro TouchBar虛擬按鍵無反應問題

現象:      Mac Pro上的TouchBar虛擬按鍵無反應,音量按鍵無法拖動,也無法鎖屏。 解決方案:      重啓TouchBar。 1、打開命令行工具Terminal或iTerm。 2、輸入指令:killall Contro

原创 Pixel 3 XL 刷入EdXposed框架

一、解鎖OEM          1、打開設置-->關於手機,在版本號處連續點擊7次,調出開發者選項。          2、打開設置-->系統-->高級-->開發者選項,打開USB調試開關和OEM解鎖。          3、若OEM解

原创 7.0以上系統Charles無法抓取https接口的解決方案

現象     Android 7.0及以上系統在即使安裝過證書的情況下,抓取https接口會出現:Client SSL handshake failed: An unknown issue occurred processing the

原创 MIME類型彙總

類型/子類型 擴展名 application/envoy evy application/fractals fif application/futuresplash spl application/hta ht

原创 Java虛擬機學習---Class文件解析

class文件整體結構:  類型 名稱    說明 長度 u4 magic 魔數,識別Class文件格式 4個字節 u2             minor_version 副版本號 2個字節 u2          major_vers

原创 Andorid 多FileProvider問題

背景:     開發SDK過程中,爲了兼容Android 7.0以上文件訪問問題,引入了FileProvider,但業務方在使用SDK的過程中也引入了FileProvider,導致多個FileProvider共存時,打出的apk包Mani

原创 Java虛擬機學習---垃圾回收算法的思考

引用計數算法       給對象添加一個引用計數器,每當有一個地方引用它時,計數器值就加1;當引用失效時,計數器值減1;任何時刻計數器爲0的對象就是不可能被使用的。      這種算法的實現簡單,判定效率也很高,在大部分情況下它都是一個不

原创 Java對象Cloneable實現深拷貝的思考

    所謂對象淺拷貝,拷貝的是對象的內存地址,深拷貝,是對將對象裏的內容拷貝出來並放到一個新的對象中,二者的區別是,修改原對象時,淺拷貝會跟着修改,深拷貝對象不受原對象的影響。在一些多線程和併發的場景中經常會牽涉到對象的拷貝。    

原创 Java虛擬機學習---Java內存分配模型

在做內存泄露的時候有個疑惑:        爲什麼線程結束時靜態變量不會被回收? 帶着這個問題,去學習了Java的內存分配,記錄下: Java內存模型            上面就是我們經常看到的圖,包含了程序運行期間的所有類、方法、對象

原创 android Profiler 實戰-----CPU佔用率分析

前期準備 1、連接手機       在AndroidStudio右上角的導航欄中有一個圖標可以快速啓動Profiler(紅框中的圖標),點擊後會啓動app。        2、app啓動後在AndroidStudio中會看到下面這張表格:

原创 Mac下編譯openJDK 1.9

準備 1、安裝homebrew ,打開命令行工具: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/ins