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

山东网站seo开发wordpress acf插件

山东网站seo开发,wordpress acf插件,网站建设成都,天津住房和城乡建设部网站1对象内存结构说明 注意: 如果对象为数组对象,在对象头后面有4字节存储数组长度; 1.1对象头 对象头分为Mark Word和Class Pointer两部分; Mark Word:对象基础信息 32位操作系统中占4字节,64位操作系统中占8…
1对象内存结构说明

注意:

如果对象数组对象对象头后面4字节存储数组长度

1.1对象

对象头分为Mark WordClass Pointer两部分

Mark Word对象基础信息

  • 32位操作系统中占4字节64操作系统8字节
  • 对于不同状态(无锁态,轻量级锁,重量级锁,GC标记,偏向锁)的对象Mark Word包含的信息相同
  • 主要包含哈希码(HashCode)、GC分代年龄、锁状态标志信息

Klass Pointer类元数据指针

  • 32位操作系统中占4字节
  • 64位操作系统中占8字节,开启指针压缩时占4字节
  • 表明对象属于哪个类型
  • 元数据存在方法区记录这个哪些属性哪些方法以及方法代码
  • Class对象不同Class类加载生成java对象存放在堆空间,提供反射机制使用底层也是借用类元信息完成反射功能
1.2实例数据

对象属性的值数据

1.3填充字节

默认8字节对齐

保证对象大小8整数

2 通过jol计算对象大小

依赖

<dependency><groupId>org.openjdk.jol</groupId><artifactId>jol-core</artifactId><version>0.10</version></dependency>

分析Object对象大小

  • 代码

public static void main(String[] args) {ClassLayout classLayout = ClassLayout.parseInstance(new Object());System.out.println("对象信息===================");System.out.println(classLayout.toPrintable());System.out.println("类信息===================");classLayout = ClassLayout.parseClass(Object.class);System.out.println(classLayout.toPrintable());
}

  • 输出

分析int[]对象大小

  • 代码

public static void main(String[] args) {ClassLayout classLayout = ClassLayout.parseInstance(new int[]{1,2,3});System.out.println("对象信息===================");System.out.println(classLayout.toPrintable());System.out.println("类信息===================");classLayout = ClassLayout.parseClass(int[].class);System.out.println(classLayout.toPrintable());
}

  • 输出

分析自定义类App对象大小

  • 代码

public class App {private Integer a;private  int b;private Byte d;private byte e;public static void main(String[] args) {ClassLayout classLayout = ClassLayout.parseInstance(new App());System.out.println("对象信息===================");System.out.println(classLayout.toPrintable());System.out.println("类信息===================");classLayout = ClassLayout.parseClass(App.class);System.out.println(classLayout.toPrintable());}
}

  • 输出

结论

  • jvm中数组长度存储为4字节,则数组最大长度为Integer的最大值
  • jvm对象中只有属性信息方法信息通过class pointer找到元数据获取
  • jvm对象属性包含bytecharshort不足4字节基础类型数据按照基础类型排列原则如果基础类型所有属性所占字节数非4整数需要填充内部对齐字节满足4整数
  • jvm对象中属性按照基础类型包装类型顺序排列
  • jvm对象中属性为基础类型或包装类型所占存储不一样
  • jvm对象中属性为包装类型存储包装类型对象内存地址需要二次寻址确定对应

思考:

既然包装类型基础类型所占空间大小不一样并且包装类型数据需要二次寻址那么日常编程什么情况下需要包装类型什么情况下需要基础类型

3 指针压缩
  • 压缩jvm对象内存地址
  • 使用jvm参数-XX:+UseCompressedOops开启指针压缩
  • jdk8默认开启
  • jol分析指针压缩

http://www.15wanjia.com/news/175516.html

相关文章:

  • wordpress做cms网站怎样看一个网站的信息吗
  • 要怎么做网站无锡餐饮网站建设
  • 怎么做带网站连接的表格做水电到哪个网站找信息
  • 做一个中英文网站的价格wordpress如何装修
  • 企业网站营销典型案例企商百度网站建设
  • asp怎么样做网站后台企业内部网站建设方案
  • 网站设计论文html中铁建设集团有限公司是国企还是央企
  • tv域名的网站永康市网站建设制作
  • 大兴建设网站公司分销体系搭建
  • 西安网站建设ipv6wordpress 邀请
  • 滁州建设网站移动端包括哪些
  • 台州服务网站做性视频网站有哪些内容
  • 微信互动平台网站建设app软件开发就是网站开发吗
  • 江苏镇江网站建设wordpress author id
  • 佛山本地的网站设计公司苏州市吴江区住房和城乡建设局网站
  • 高端兼职网站开发网站 建设 流行 数据库
  • 可以做手机网页的网站公司介绍信模板
  • 保定网站制作软件新网官方网站
  • 网站扁平化设计理念300网站建设
  • 广州网站设计开发公司微信的定制开发
  • 网站 mssql 数据库什么叫网落营销
  • 福建设计招聘网站北京快三
  • 网站建设具体需求网站 设计要求
  • 网站开发项目对自身的意义产品网站建设设计方案
  • 做网站要学一些什么外贸网站域名用境内还是境外
  • 社区微网站建设方案ppt模板下载网站首页倒计时功能怎么做
  • 网站已经申请了域名 接下来怎么网站规划与设计方向
  • 太原模板建站厦门网站建设模拟平台
  • 免费的网站推广渠道地方文明网站建设措施
  • 校园二手交易网站开发背景“网站制作”