01 2021 档案
摘要:一:两种解释器 JAVA字节码解释器: java字节码 》c++代码==》硬编码。 首先.java文件编译成字节码,遍历每行的字节码指令,因为每个字节码指令的含义都是固定的所以可以根据每行字节码指令来转成c++代码调用,最后转成硬编码(机器码)来执行。 模板解释器: 由java字节码==》硬编码。可
阅读全文
摘要:常量池: 我们前面也一直说常量池有三种: 1:class文件中的常量池,前面我们解析class文件的时候解析的就是,这是静态常量池。在硬盘上。 2:运行时常量池。可以通过HSDB查看,是InstanceKlass的一个属性:ConstantPool *_constants。在方法区或者说在元空间中(
阅读全文
摘要:一:不同进制之间的转换 二进制:逢2进1,数字0-1。 八进制:逢8进1,数字0-7。三位二进制表示一位八进制。三位二进制最大为111,最大为7。 十进制:逢10进1,数字0-9。四位二进制表示一位十进制数,四位二进制组合有16种数字,取其中10个作为十进制的0-9数字的表示。称为BCD编码。8-4
阅读全文
摘要:前言:只有一台华为云服务器,所以打算创建三个容器来模拟三个服务器了。 一:拉取redis镜像 二:拉取redis.conf文件 放在自定义的目录下:wget -c http://download.redis.io/redis-stable/redis.conf 三:启动三个redis容器,redis
阅读全文
摘要:前言: 我们都知道判断两个类是不是同一个,要根据类加载器和全限定名。这是为什么呢?为什么不同的类加载器加载同一个类是不同的呢? 答案就是,不同的类加载器所加载的类在方法区的存储空间是不同的即InstanceKlass的不同。不同类加载器之间的空间是分隔开的。同一个类在一个类加载器中只会加载一次。 双
阅读全文