DAY 1 Jvm- java虚拟机 3. Java堆(重要) 4. 直接内存 5. Java栈 6. 本地方法栈(不重要) 7. 垃圾回收系统(重要) 8. PC寄存器(不重要) 9. 执行引擎 堆栈方法区详细 Java堆(核心) Java堆完全自动化管理,通过垃圾回收机制自动清理,不需要显示的释 ...
分类:
其他好文 时间:
2018-11-19 17:32:36
阅读次数:
180
Java 字节码的执行是由 JVM 执行引擎来完成,流程图如下所示: Java 代码编译和执行的整个过程包含了以下三个重要的机制: Java 源码编译机制 类加载机制 类执行机制 Java 源码编译机制 Java 源码编译由以下三个过程组成: 分析和输入到符号表 注解处理 语义分析和生成 class ...
分类:
编程语言 时间:
2018-11-13 20:21:21
阅读次数:
130
周志明的《深入理解Java虚拟机》很好很强大,阅读起来颇有点费劲,尤其是当你跟随作者的思路一直探究下去,开始会让你弄不清方向,难免有些你说的啥子的感觉。但知识不得不学,于是天天看,反复看,就慢慢的理解了。我其实不想说这种硬磨的方法有多好,我甚至不推荐,我建议大家阅读这本书时,由浅入深,有舍有得,先从 ...
分类:
编程语言 时间:
2018-10-29 19:57:40
阅读次数:
191
[TOC] 基础 建立在Hadoop上的数据仓库(Hive的表就是HDFS的目录、数据就是HDFS的文件),定义了类似SQL的查询语言,通过它来读写和管理分布式存储的数据。它的底层执行引擎可以是MapReduce、Spark等(将SQL语句转化成M/R或者Spark语言)。 优点:简单SQL,常用于 ...
分类:
其他好文 时间:
2018-10-29 18:28:23
阅读次数:
173
脚本型语言:shell perl ruby 解释性语言 系统级语言: c c++ erlang golang应用级语言: python java C JVM执行引擎里面有一个块运行时的内存,内存里分为线程共享区和线城私有区线程共享区:方法区,堆内存(优化)线城私有区:java栈(执行),共有方法栈, ...
分类:
编程语言 时间:
2018-10-24 22:07:25
阅读次数:
160
1、Javascript 概述 1、简称JS,是一种浏览器解释型语言(是一种运行于JS解释器或执行引擎中的脚本代码),代码嵌套在HTML页面中,交由浏览器解释执行 作用:主要用来实现页面的动态效果,实现用户交互,实现网页中的网络请求 2、JS 组成: 1、ECMAScript:包含JS的核心语法(规... ...
分类:
Web程序 时间:
2018-10-17 22:19:07
阅读次数:
389
JVM(Java虚拟机)是一个抽象的计算模型。就如同一台真实的机器,它有自己的指令集和执行引擎,可以在运行时操控内存区域。目的是为构建在其上运行的应用程序提供一个运行环境。JVM可以解读指令代码并与底层进行交互:包括操作系统平台和执行指令并管理资源的硬件体系结构。本文主要对JVM进行概述,并介绍Ja ...
分类:
编程语言 时间:
2018-10-06 23:07:56
阅读次数:
256
方法返回地址 当一个方法开始执行后,只有两种方式可以退出这个方法。第一种方式是执行引擎遇到任意一个方法返回的字节码指令,这时候可能会有返回值传递给上层的方法调用者(调用当前方 法的方法称为调用者),是否有返回值和返回值的类型将根据遇到何种方法返回指令来决定,这种退出方法的方式称为正常完成出口(Nor... ...
分类:
其他好文 时间:
2018-09-22 23:18:24
阅读次数:
199
每一个独立的栈帧中除了包含局部变量表以外,还包含一个后进先出(Last-In-First-Out)的操作数栈,也可以称之为表达式栈(Expression Stack)。操作数栈和局部变量表在访问方式上存在着较大差异,操作数栈并非采用访问索引的方式来进行数据访问的,而是通过标准的入栈和出栈操作来完成一... ...
分类:
其他好文 时间:
2018-09-22 23:15:51
阅读次数:
221
在讲这一节之前我们先来抛出一个问题,为什么局部变量必须初始化才能使用,而全局变量却不需要初始化呢? 在这里先写出原因,因为全局变量static一般在类加载器准备的阶段就已经加载到方法区之中了,并且会给它附一个初始化的值比如说0,null之类的让后在把程序员初始化的值付给成员变量。而局部变量却不是这样... ...
分类:
其他好文 时间:
2018-09-22 23:13:38
阅读次数:
187