JVM中的类和方法

原创 2018年04月17日 10:08:13

方法签名

java语言层面的方法特征签名 = 方法名 + 参数类型 + 参数顺序。

在运行时

每个线程在内存中都会保存一系列栈帧。栈帧包含局部变量表,操作数栈,动态链接,和返回地址。

  • 局部变量表:一个局部变量(Slot)可以保存一个类型为boolean、byte、char、short、float、reference和returnAddress的数据,两个局部变量可以保存一个类型为long和double的数据。

  • 每一个栈帧内部都包含一个称为操作数栈(Operand Stack)的后进先出(Last-In-First-Out,LIFO)栈。

类的生命周期

加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)、卸载(Unloading)

JVM中的方法区(Method Area)

Java在内存中专门划分出一块静态存储区域(即在固定位置上存放应用程序运行时一直存在的数据,由于位置固定,下次调用时便省去了查找的麻烦),称为方法区。       类型信息(这里的类型指类或接口...
  • u010708434
  • u010708434
  • 2013-08-24 21:35:47
  • 2102

类在JVM中的执行过程

在java源文件(.java)被编译成字节码(.class)文件后,启用命令java Demo,就会调用Demo类的main()方法来启动java虚拟机(jvm)。即JVM加载到内存后,就调用Demo...
  • yangxiaojuan2015
  • yangxiaojuan2015
  • 2016-04-28 17:14:18
  • 1370

JVM使用方法区信息例子

本文是对JVM执行一个Class文件的过程的一个总结。比如,现在我有2个类: 1:Class Lava {    private int speed = 5;    void flow() ...
  • jiafu1115
  • jiafu1115
  • 2011-12-02 11:03:01
  • 1180

执行类方法时JVM会执行什么过程?

A a = new A(); a.f();首先我们要知道,这里执行a.f()方法跟a这个实际对象是没有什么关系的[客观存在]。执行类方法时,JVM分析a对象的对象头中的类型信息,在方法区中找到A的f(...
  • TyroneRenekton
  • TyroneRenekton
  • 2017-02-28 09:36:57
  • 210

JVM如何加载一个类的过程

虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析、初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制 从类被加载到虚拟机内存中开始,到卸载出内存为...
  • s646575997
  • s646575997
  • 2016-05-10 11:15:45
  • 1523

jvm方法区存储了什么东西?

总的来说: 类的方法代码,常量,静态变量,方法名,访问权限,返回值等等都是在方法区的常量池 jvm为每个已加载的类型都维护一个常量池。常量池就是这个类型用到的常量的一个有序集合,包括实际的常量(...
  • weixin_38070406
  • weixin_38070406
  • 2017-09-02 20:44:29
  • 580

深入理解jvm--Java中init和clinit区别完全解析

init和clinit区别①init和clinit方法执行时机不同 init是对象构造器方法,也就是说在程序执行 new 一个对象调用该对象类的 constructor 方法时才会执行init方法,...
  • u013309870
  • u013309870
  • 2017-06-10 10:43:57
  • 1951

JVM如何加载一个类的过程,双亲委派模型中有哪些方法?

1、类加载过程:加载、验证、准备、解析、初始化 加载 在加载阶段,虚拟机主要完成三件事:       1.通过一个类的全限定名来获取定义此类的...
  • ma345787383
  • ma345787383
  • 2017-08-11 15:43:10
  • 271

java类在jvm中经历的几个阶段以及对象中的属性赋值和方法的执行顺序

本文基于个人的一些理解做的整理,如果有什么位置有问题,欢迎留言指教。jvm加载资源的几个阶段  jvm加载一个类需要经过加载、连接、初始、使用和卸载几个阶段。我们介绍下前3个阶段加载加载是jvm加载二...
  • xupeng874395012
  • xupeng874395012
  • 2017-07-31 12:08:56
  • 827

Java类中各模块的加载顺序的JVM本质理解

Java类中各模块的加载顺序只是表象,但至于为什么我们需要理解JVM的加载本质原理。...
  • wzw9353
  • wzw9353
  • 2017-07-09 16:15:26
  • 763
收藏助手
不良信息举报
您举报文章:JVM中的类和方法
举报原因:
原因补充:

(最多只允许输入30个字)