‘壹’ 请高手详细的解答一下java的堆,栈,方法区,谢谢。
方法区(非堆):是各个线程共享的内存区域,它用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。
java堆:是虚拟机中所管理的内存中区域最大的一块,是被所有线程共享的一块内存区域,在虚拟机启动时创建。此内存区域的唯一目的就是存放对象实例,几乎所有的对象实例都在这里分配内存。java堆是垃圾收集器管理的主要区域。
java虚拟机栈:线程私有的,它的生命周期与线程相同。每个方法被执行的时候都会同时创建一个栈帧,用于存储局部变量表、操作数栈、动态链接、方法出口等信息。每个方法被调用直至执行完成的过程,就对应着一个栈帧在虚拟机中从入栈到出栈的过程。
‘贰’ JAVA虚拟机是什么意思
Java虚拟机(Java Virtual Machine,简称JVM)是一种假想的计算机。从结构上看,它由抽象的指令集、寄存器组、类文件格式规定、堆栈、内存垃圾收集器和存储区六个部件组成。指令集采用与平合无关的字节码形式,寄存器组中包含程序计数器、堆栈指针、运行环境指针和变量指针,类文件也与平台无关,堆栈用来传递参数和返回运行结果,垃圾收集器收集不再使用的内存片段,存储区则用来存放字节码。JVM仅仅规定部件的功能和规格。虽然这些功能和规格是统一的,但是并没有规定这此部件的具体实现技术,就是说,可以用任何一种技术来实现。
Java中引入了虚拟机的概念,即在机器和编译程序之间加入了一层抽象的虚拟的机器。这台虚拟的机器在任何平台上都提供给编译程序一个的共同的接口。编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来将虚拟机代码转换为特定系统的机器码执行。在Java中,这种供虚拟机理解的代码叫做字节码(ByteCode),它不面向任何特定的处理器,只面向虚拟机。
每一种平台的解释器是不同的,但是实现的虚拟机是相同的。Java源程序经过编译器编译后变成字节码,字节码由虚拟机解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器将其翻译成特定机器上的机器码,然后在特定的机器上运行。
可以说,Java虚拟机是Java语言的基础。它是Java技术的重要组成部分。Java虚拟机是一个抽象的计算机,和实际的计算机一样,它具有一个指令集并使用不同的存储区域。它负责执行指令,还要管理数据、内存和寄存器。Java解释器负责将字节代码翻译成特定机器的机器代码。Java是一种简单的语言。它用到的概念不多,而且多为程序员所熟悉。如果你是一名程序员,掌握Java对你来说是易如反掌的事。即使你没有学过任何编程语言,学习Java也要比学习C++要容易的多。
‘叁’ jdk,jre,jvm三者间有何关系
JVM:Java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行。
JRE:Java运行环境,光有JVM还不能让class文件执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。
JDK:Java开发工具包
JDK是JAVA程序开发时用的开发工具包,其内部也有Java运行环境JRE。JRE是Java程序运行时需要的运行环境,就是说如果你光是运行Java程序而不是去搞开发的话,只安装JRE就能运行已经存在的Java程序了。JDk、JRE内部都包含JAVA虚拟机JVM,JAVA虚拟机内部包含许多应用程序的类的解释器和类加载器等等。
‘肆’ 求Java教程,谁有Java视频教程
【JAVA】达内2015Java教程网络网盘免费资源在线学习
链接: https://pan..com/s/1CRR1h30gDbSyalowSMqgCQ
【JAVA】达内2015Java教程 视频+笔记+教材+代码 视频 教科书 毕业设计和项目 TTS8.0课件+课后练习+代码 达内代码.rar 笔记.rar 每周一测 12.spring 11.hibernate 10.struts 09.servlet 08.ajax_jquery 07.HTML
‘伍’ java中虚拟机该怎么用
第一,你如果安装的是jdk1.6.0.02这个安装包,那么你看看你的安装路径下面应该有两个文件夹,一个叫jdk1.6.0_22,一个叫jre6。
第二,java虚拟机在后面一个文件夹里面,也就是在名称为jre6的文件夹内。
第三,java虚拟机的应用:java虚拟机是用来编译运行java字节码文件的,如果你已经有需要运行的java字节码文件,那么只需要配置这个字节码文件的路径就可以了。下面介绍配置路径(classpath):
【1】,右键点击我的电脑,点击属性,选择高级,你在里面可以看到“环境变量”的按钮,点击它。
【2】,在打开的界面可以看到两个列表框,在下面的那个列表框“系统变量”下面,你找“变量”那一列看看有没有classpath这个字段,如果有就左键选中,点击编辑,在打开的输入框的最左边输入你的java字节码文件的全路径,最后用分号(英文的分号)结束。如果没有就新建个classpath,把你的java字节码文件的全路径输入进去,用分号结束就ok,算是路径配置成功了。
【3】,最后就是运行你的java字节码文件了。
点击开始,运行,输入cmd跳转到命令提示符界面。假如你的java字节码文件在E:\javatest下面,名字叫Test.class
那你先输入“E:”然后回车,然后再输入“cd javatest”回车,然后输入“java Test”回车,就可以看到你的java字节码文件的运行结果了。
我有一篇PPT啊 那里有详细的记载啊 谢谢 才内啊