Java之类加载器
什么是类加载器我们都知道Java程序运行到jvm上,我们把Java源码文件编译为jvm运行的指令,这些指令按照一定格式存在一个文件中-Java class文件,这些class文件如果要运行需要类加载器先加载到虚拟机内存中,然后获取一个java.lang.Class对象。在Java中有三种类加载器:
引导类加载器:用来加载jdk的自带类(rt.jar等,可以通过Launcher.getBootstrapClassPath()获取路径.)
扩展类加载器Launcher.ExtClassLoader:用来加载%JAVA_HOME%/jre/lib/ext下的类。
应用类加载器Launcher.AppClassLoader:用来加载classpath下的类。
获取不同的类加载器:
123456@Test public void javaClassLoader() throws Exception { log.info(s(Integer.class.getClassLoader())); log.info(s(NashornGuards.class.g ...
Java之HashMap分析
hashmap分析前准备
当前jdk版本:jdk1.8
为了更好的研究hashmap的数据结构,我们写了个hashmap反射函数,可以打印出当前数据存放结构可视化和各项属性参数,这样可以帮助我们展示hashmap对象的具体情况和参数,下面是源码。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384@Testpublic void hashMapRefectionStudy() throws Exception { // 初始化map Map<Integer, String> map = new HashMap<>(); for (int i = 0; i < 15; i++) { map.put((i ...
Hello Bolg
hexo install安装brew1/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装git1brew install git
安装node1brew install node
安装hexo1npm install -g hexo-cli
初始化hexo1hexo init hexo
开启hexo服务器1hexo s
进入主页:http://localhost:4000/
Quick StartCreate a new post1$ hexo new "My New Post"
More info: Writing
Run server1$ hexo server
More info: Server
Generate static files1$ hexo generate
More info: G ...