随笔分类 -  jvm

摘要:jvm内部有五种调用方法的指令 看两个类 两个类对应的方法表 animal的方法表 bird方法表 如果重写父类的方法,父类方法的index和子类的一致,方便查找。 由上可知,使用继承或实现会让程序变慢,因为需要查方法表,但是没有必要因为慢而放弃面向对象良好的设计,因为这个时间很短并且jvm还有针对 阅读全文
posted @ 2019-02-03 12:07 刘皓lh 阅读(663) 评论(0) 推荐(0)
摘要:java有很多语法糖,比如自动拆箱,自动装箱,foreach等等,这些原理相信每一个入门教程里都有讲,但是我相信不是每一个人 都通过查看这些语法糖的字节码来确认这些原理,因为我也是现在才想看一下。 1.自动拆箱和自动装箱 字节码非常清楚的描述了装箱拆箱过程,关于Interger还有一个知识点就是In 阅读全文
posted @ 2019-02-03 12:05 刘皓lh 阅读(244) 评论(0) 推荐(0)
摘要:1. 字符串生成过程 我们都知道String s = "hello java";会将“hello java”放入字符串常量池,但是从jvm的角度来看字符串和三个常量池有关,class常量池,运行时常量池,全局字符串常量池(也就是常说的字符串常量池) 第一个是class的常量池,看一下下面这个代码 如 阅读全文
posted @ 2019-01-24 16:45 刘皓lh 阅读(875) 评论(0) 推荐(0)