JVM平台无关性 Java具有平台无关性,也就是任何操作系统都能运行Java代码。之所以能实现这一点,是因为Java运行在虚拟机之上,不同的操作系统都拥有各自的Java虚拟机,因此Java能实现“一次编写,处处运行”。而JVM不仅具有平台无关性,还具有语言无关性。 平台无关性是指不同操作系统都有各自 ...
分类:
其他好文 时间:
2018-07-02 01:14:19
阅读次数:
188
线程 运行数据区分为线程共享区和线程独占区 线程独占区的意思是每开启一个线程就会拥有一个线程独占区域 如下图所示: 程序计数器: 1)是一块较小的内存空间,可看做当前线程所执行的字节码的行号指示器 2)它处于线程独占区(每一个线程都会有自己的线程独占区) 3)如果线程执行的是java方法,这个计数器 ...
分类:
编程语言 时间:
2018-07-01 23:02:02
阅读次数:
188
让我们思考这样一个问题:一个Java对象如何在基于c++实现的系统中运行?对象在JVM内部是如何表示的?它在内存中是如何存储的...... 1.OOP-Klass 二分模型 Java是面向对象的语言,面向对象有三个特征:封装、继承和多态。而HotSpot基于C++实现,C++也是面向对象的语言,那这 ...
分类:
编程语言 时间:
2018-07-01 19:53:26
阅读次数:
469
java虚拟机有的区域随着虚拟机进程的启动而存在, 有的区域依赖用户线程的启动和结束而建立和销毁。 程序计数器:为了线程切换后能恢复到正确的执行位置,每个线程都有一个独立的程序计数器。(针对java方法,即栈) 虚拟机栈:为了虚拟机执行java方法,线程创建时就会创建一个栈帧,存储局部变量表、操作数 ...
分类:
编程语言 时间:
2018-07-01 18:20:40
阅读次数:
190
02 JVM 系列(二)内存模型 一、JVM 内存组成 (1) PC 寄存器(线程私有) Java 虚拟机会为每个线程创建 PC 寄存器,在任意时刻,一个 java 线程总是在执行一个方法,这个方法被称为当前方法。 如果当前方法不是本地方法,PC 寄存器就会执行当前正在被执行的指令,如果是本地方法, ...
分类:
其他好文 时间:
2018-07-01 11:53:41
阅读次数:
211
基于J2EE的订单管理系统设计与实现 摘要:随着经济的快速发展,人们生活水平的不断提高,单一传统的实体的实体购物已经远远满足不了现代人们快节奏,高效率的生活购物模式。电子商务作为更加高效便捷的购物消费方式,逐渐融入我们的生活,被越来越多的年轻消费者所接受和认可,在这样的大背景下,各行各业的产品经销企 ...
分类:
其他好文 时间:
2018-07-01 01:05:12
阅读次数:
1923
.java叫源文件,java编译器编译源文件后会产生字节码文件,java解释器将字节码文件加载进内存,java虚拟机来执行字节码文件。 如下列文件名为“String01.java” public class String01 { int h; int l; public String01(int h ...
分类:
其他好文 时间:
2018-07-01 00:24:58
阅读次数:
163
Tomcat优化 内存优化 Linux下修改TOMCAT_HOME/bin/catalina.sh,在其中加入,可以放在CLASSPATH=下面: JAVA_OPTS=" server Xms128m Xmx128m" server:启用 JDK的 server 版本; Xms:Java虚拟机初始化 ...
分类:
其他好文 时间:
2018-06-30 22:20:53
阅读次数:
158
背景知识了解: 一个类加载离不开Jvm,Jvm是什么?Java Virtual Machine(Java虚拟机)的缩写。Jvm执行字节码(.class文件)时,将其翻译成各个平台都能运行的机器指令。因此,Java能一次编译,到处运行(各个平台)。 运行一个java程序,即可启动一个jvm进程。同一个 ...
分类:
其他好文 时间:
2018-06-30 19:53:04
阅读次数:
209
JVM是JAVA平台的重要组成之一,因涉及知识点太多,故从以下几个方面对JVM进行浅层面的介绍,如果需要深入理解,推荐学习机械工业出版社的《深入理解JAVA虚拟机》。 一、JAVA内存结构 Java虚拟机规范中规定的JVM运行时数据区如下图所示: 总体来说,分为线程共享部分(方法区、堆)和线程隔离区 ...
分类:
编程语言 时间:
2018-06-30 14:56:05
阅读次数:
181