摘要: 一、背景 1.1 永久代(PermGen)在哪里? 根据,hotspot jvm结构如下(虚拟机栈和本地方法栈合一起了): 上图引自网络,但有个问题:方法区和heap堆都是线程共享的内存区域。 关于方法区和永久代: 在HotSpot JVM中,这次讨论的永久代,就是上图的方法区(JVM规范中称为方法 阅读全文
posted @ 2018-03-08 20:01 ken007 阅读(293) 评论(0) 推荐(0)
摘要: 说起垃圾收集(Garbage Collection,GC),大部分人都把这项技术当做Java语言的伴生产物。事实上,GC的历史远比Java久远,1960年诞生于MIT的Lisp是第一门真正使用内存动态分配和垃圾收集技术的语言。当List还在胚胎时期时,人们就在思考GC需要完成的3件事情: 哪些内存需 阅读全文
posted @ 2018-03-08 18:25 ken007 阅读(162) 评论(0) 推荐(0)
摘要: 1、运行时栈帧结构 在Java虚拟机内存结构中介绍了虚拟机栈,也说明了栈帧是虚拟机栈的构成元素,但没有具体介绍栈帧的细节。栈帧是虚拟机栈的构成元素,每一个栈帧对应一个方法调用,入栈和出栈操作就相当于方法的调用与退出。每一个栈帧都包含了局部变量表、操作数栈、动态连接、方法返回地址和其它的附加信息。在介 阅读全文
posted @ 2018-03-08 15:41 ken007 阅读(232) 评论(0) 推荐(0)
摘要: 1,在一个类的内部(不考虑它是另一个类的派生类):很多人认为,类的成员变量是在构造方法调用之后再初始化的,先不考虑这种观点的正确性,先看一下下面的代码: [java] view plaincopy class Test01...{ public Test01(int i)...{ System.ou 阅读全文
posted @ 2018-03-08 11:51 ken007 阅读(212) 评论(0) 推荐(0)
摘要: 一、问题 请在Eclipse中新建如下类,并运行它: 你能猜到它的运行如果吗? 不错,就是如下这个样子! 错误: 在类 java.lang.Long 中找不到 main 方法, 请将 main 方法定义为:public static void main(String[] args)否则 JavaFX 阅读全文
posted @ 2018-03-08 10:40 ken007 阅读(157) 评论(0) 推荐(0)
摘要: self代表类的实例,而非类。 实例来说明 Python 1 2 3 4 5 6 7 class Test: def prt(self): print(self) print(self.__class__) t = Test() t.prt() Python Python 1 2 3 4 5 6 7 阅读全文
posted @ 2018-03-07 22:36 ken007 阅读(241) 评论(0) 推荐(0)
摘要: 在使用git时,假如远程仓库有 dev 和 master 两个分支,master 作为一个稳定版分支,可用于直接发布产品,日常的开发则 push 到 dev 分支,那本地是不是要从 dev 分支中创建一个本地分支,然后在这个分支的 push 的动作是默认推到远程 dev 分支上? 解惑 一、远程仓库 阅读全文
posted @ 2018-03-07 22:30 ken007 阅读(9633) 评论(0) 推荐(0)
摘要: 概述 在Java语言里面,类的加载、连接、初始化过程都是在程序运行期间完成的,这种策略虽然会令类加载时稍微增加一些性能开销,但是会为Java应用程序提供高度的灵活性,Java里天生可以动态扩展的语言特性就是依赖运行期动态加载和动态连接这个特点实现的。 类加载时机 类从被加载到虚拟机内存中开始,到卸载 阅读全文
posted @ 2018-03-07 18:06 ken007 阅读(238) 评论(0) 推荐(0)
摘要: Java虚拟机的指令由一个字节长度的、代表着某种特定操作含义的数字(称为操作码,Opcode)以及跟随其后的零至多个代表此操作所需参数(称为操作数,Operands)而构成。 基本数据类型 1、除了long和double类型外,每个变量都占局部变量区中的一个变量槽(slot),而long及doubl 阅读全文
posted @ 2018-03-07 16:35 ken007 阅读(3652) 评论(0) 推荐(2)
摘要: Class文件是一组以8位字节为基础单位的二进制流,所以我们有时候也称之为字节文件。各个数据项是字节按照类文件组成规范严格按顺序紧凑地排列在Class文件之中,中间是没有任何分隔符的,所以大家把Class文件打开来看就像看机器码一样一堆十六进制字符,如下图所示: 按照Java虚拟机规范所说,Clas 阅读全文
posted @ 2018-03-07 16:04 ken007 阅读(184) 评论(0) 推荐(0)