当前位置: 首页 > news >正文

网站开发教程 视频能打开网站的浏览器

网站开发教程 视频,能打开网站的浏览器,如果学wordpress,如何向alexa提交网站目录 1. 栈 2. 堆 3. 方法区 4. 本地方法栈 5. 程序计数器 首先来看一下JVM运行时数据区有哪些。 1. 栈 在介绍JVM栈之前#xff0c;先了解一下 栈帧 概念。 栈帧#xff1a;一个栈帧随着一个方法的调用开始而创建#xff0c;这个方法调用完成而销毁。栈帧内存放者方…目录 1. 栈 2. 堆 3. 方法区 4. 本地方法栈 5. 程序计数器 首先来看一下JVM运行时数据区有哪些。 1. 栈 在介绍JVM栈之前先了解一下 栈帧 概念。 栈帧一个栈帧随着一个方法的调用开始而创建这个方法调用完成而销毁。栈帧内存放者方法中的局部变量操作数栈等数据。 Java栈也称作虚拟机栈Java Vitual Machine StackJVM栈只对栈帧进行存储压栈和出栈操作。 Java栈是Java方法执行的内存模型。下面我们来看一个Java栈图。 Java栈中存放的是一个个的栈帧每个栈帧对应一个被调用的方法在栈帧中包括局部变量表(Local Variables)、操作数栈(Operand Stack)、指向当前方法所属的类的运行时常量池运行时常量池的概念在方法区部分会谈到的引用(Reference to runtime constant pool)、方法返回地址(Return Address)和一些额外的附加信息。 当线程执行一个方法时就会随之创建一个对应的栈帧并将建立的栈帧压栈。当方法执行完毕之后便会将栈帧出栈。 因此可知线程当前执行的方法所对应的栈帧必定位于Java栈的顶部。 对于所有的程序设计语言来说栈这部分空间对程序员来说是不透明的。  栈内存的大小可以有两种设置固定值和根据线程需要动态增长。 在JVM栈这个数据区可能会发生抛出两种错误。 StackOverflowError 出现在栈内存设置成固定值的时候当程序执行需要的栈内存超过设定的固定值会抛出这个错误。OutOfMemoryError 出现在栈内存设置成动态增长的时候当JVM尝试申请的内存大小超过了其可用内存时会抛出这个错误。 总结 每个线程包含一个栈区,栈中只保存基础数据类型的对象和自定义对象的引用(不是对象)。对象都存放在堆区中。每个栈中的数据(基础数据类型和对象引用)都是私有的其他栈不能访问。栈分为3个部分基本类型变量执行环境上下文操作指令区(存放操作指令).在函数中定义的一些基本类型的变量数据和对象的引用变量都在函数的栈内存中分配。当在一段代码块定义一个变量时Java就在栈中为这个变量分配内存空间当该变量退出该作用域后Java会自动释放掉为该变量所分配的内存空间该内存空间可以立即被另作他用。 2. 堆 堆数据区是用来存放对象和数组特殊的对象。堆内存由多个线程共享。堆内存随着JVM启动而创建。 众所周知Java中有一个很好的特性就是自动垃圾回收。垃圾回收就操作这个数据区来回收对象进而释放内存。 如果堆内存剩余的内存不足以满足于对象创建JVM会抛出OutOfMemoryError错误。 总结 存储的全部是对象每个对象包含一个与之对应的class信息–class的目的是得到操作指令。jvm只有一个堆区heap被所有线程共享堆区中不存放基本类型和对象引用只存放对象本身。堆的优势是可以动态地分配内存大小生存期也不必事先告诉编译器因为它是在运行时动态分配内存的Java的垃圾收集器会自动收走这些不再使用的数据。缺点是由于要在运行时动态分配内存存取速度较慢。 3. 方法区 方法区在JVM中也是一个非常重要的区域它与堆一样是被线程共享的区域。 在方法区中存储了每个类的信息包括类的名称、方法信息、字段信息、静态变量、常量以及编译器编译后的代码等。 在Class文件中除了类的字段、方法、接口等描述信息外还有一项信息是常量池用来存储编译期间生成的字面量和符号引用。 在方法区中有一个非常重要的部分就是运行时常量池它是每一个类或接口的常量池的运行时表示形式在类和接口被加载到JVM后对应的运行时常量池就被创建出来。 当然并非Class文件常量池中的内容才能进入运行时常量池在运行期间也可将新的常量放入运行时常量池中比如String的intern方法。 4. 本地方法栈 一个支持native方法调用的JVM实现需要有这样一个数据区就是本地方法栈。 Java官方对于本地方法的定义为methods written in a language other than the Java programming language就是使用非Java语言实现的方法但是通常我们指的一般为C或者C因此这个栈也有着C栈这一称号。 一个不支持本地方法执行的JVM没有必要实现这个数据区域。 本地方法栈基本和JVM栈一样其大小也是可以设置为固定值或者动态增加因此也会对应抛出StackOverflowError和OutOfMemoryError错误。 在HotSopt虚拟机中直接就把本地方法栈和Java栈合二为一。 5. 程序计数器 在通用的计算机体系中程序计数器用来记录当前正在执行的指令在JVM中也是如此。 程序计数器是线程私有所以当一个新的线程创建时程序计数器也会创建。 由于Java是支持多线程Java中的程序计数器用来记录当前线程中正在执行的指令。 如果当前正在执行的方法是本地方法那么此刻程序计数器的值为undefined。 注意这个区域是唯一一个不抛出OutOfMemoryError的运行时数据区。 参考自https://blog.csdn.net/zhangqilugrubby/article/details/59110906
http://www.hkea.cn/news/14316796/

相关文章:

  • 大良o2o网站建设数码产品网站开发背景
  • 建设银行网站不能登录密码错误搜索网站不显示图片
  • 在本地做装修在那个网站好拍摄视频制作的广告公司
  • 佛山顺德网站制作公司哪家好创建小型网站的步骤
  • 个人做商贸网站建立网站用英语怎么说
  • wordpress建站模版wordpress页面侧边栏
  • 网站建设书 模板下载wordpress 4.5.2 中文
  • 企业网站标题优化网站制作网站做网
  • 社交网站建设公司书画艺术网站建设概况
  • 重庆网站空间主机评价36氪网站是用什么做的
  • 滨海做网站哪家好滨江网站制作
  • 网站建设大数据网页设计培训班需要多久
  • wordpress建m域名网站上海今天最新发布会
  • 怎么做购物平台网站酷站是什么网站
  • 网站改版对seo影响wordpress数据库修改
  • 网站开发软件有哪些免费网站建设公司六安
  • 可以做网站的域名后缀开发app需要钱吗
  • 网站建设吗网站后台登录不进去
  • 南通网站建设外包wordpress网站500
  • 做网站的系统功能需求wordpress如何站点
  • 深圳网站建设怎么选择重庆建设工程安全协会网站
  • 百度智能门户建站怎么样wordpress如何网站顶部右侧广告
  • 国内使用vue做的网站商丘猎狐网络
  • 后缀为net的网站有哪些云服务器哪家好
  • html5在线网站网站建站公司一站式服务
  • wordpress商业网站wordpress联系方式插件
  • 深圳市建设银行网站wordpress页面不加载主题js
  • 威海企业网站建设移动端网站建设需要注意哪些问题
  • 对重庆电子政务网站建设评价长沙市旅游景点
  • 广州信科做网站成都地铁小程序