摘要:
JVM能跨计算机体系结构来执行Java字节码,主要是由于JVM屏蔽了与各个计算机平台的软件和硬件之间的差异。 7.1 JVM体系结构 7.1.1 何谓JVM 模拟一个计算机来达到一个计算机所具有的计算功能。 以计算为中心来看计算机的体系结构可以分为如下几个部分。 指令集 计算机能识别的机器语言的命令 阅读全文
摘要:
补充(非书中): Java 源程序(.java 文件)在经过 Java 编译器编译之后就被转换成 Java 字节代码(.class 文件)。类加载器负责读取Java字节代码,并转换成 java.lang.Class类的一个实例。每个这样的实例用来表示一个Java 类。通过此实例的 newInstan 阅读全文
摘要:
一次编译好的class文件是如何到处运行的 5.1 JVM指令集简介 5.1.1 与类相关的指令 5.1.2 方法的定义 5.1.3 属性的定义 5.1.4 其他指令集 5.2 class文件头的表示形式 5.3 常量池 5.3.1 UTF8常量类型 5.3.2 Fieldref,Methodref 阅读全文
摘要:
是一种行为模式。 将数据的定义和数据的操作分离,对数据的操作封装在visitor中,当增加新的操作的时候,可以增加vistor实现新行为,而不用改数据结构。 访问者模式的优点 符合单一职责原则:凡是适用访问者模式的场景中,元素类中需要封装在访问者中的操作必定是与元素类本身关系不大且是易变的操作,使用 阅读全文
摘要:
4.1 Javac是什么 是一种编译器,将JAVA源代码(.java文件)语言先转化成JVM能够识别的一种语言(.class文件),然后由JVM将JVM语言再转化成当前机器可以识别的机器语言。 4.2 javac编译器的基本结构 javac编译器的作用是将符合JAVA语言规范的源代码转化成符合JAV 阅读全文