首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    java的class文件字节码解析

    javac com/dhb/geektimestudy/kimmking/week1/HelloByteCode.java 生成了文件 HelloByteCode.class 现在通过javap查看字节码...、父索引和接口索引集合 在class文件中,将用这三项来标识的继承关系。...索引项 长度 说明 this_class 2个字节 索引,用于确定这个的全限定名 super_class 2个字节 父索引,用于确定这个的全限定名(Java语言不允许多重继承,故父索引只有一个...除了java.lang.Object之外所有都有父,故除了java.lang.Object之外,所有该字段值都不为0) interfaces_count 2个字节 接口索引计数器,如果该类没有实现任何接口...这个类属性值表示的内容为: SourceFile: "HelloByteCode.java" 至此,我们完整解析了class的字节码。

    85920

    Java Object 方法解析

    前言 我们都知道 Java 语言是面向对象的编程语言,而面向对象编程以作为基本单元。...我们也都知道,在 Java 中,所有的都将 Object 作为父,而 Object 本身提供了一些基础但是很有用的方法,这些方法我们在日常工作中经常会用到,因此熟悉它们的原理和用法对我们的开发会有很大的帮助...那么在我们自定义的中我们如何去重写这个方法呢,在《Java 编程思想》中提供了一个关于如何在自定义中编写一个合理的 hashCode 方法的参考: ? 当然,这个也仅供我们参考。...在《Java 编程思想》中关于如何重写一个自定义的 equals 方法也给出了几条建议供我们参考 ? 其实这几条建议在上面方法的注释说明中已经体现出来了。...Java Object 方法解析就到这里了,相信你对 Java Object 中的方法啊有一个更深入的理解。如果博客中有什么不正确的地方,还请多多指点。

    64030

    xml解析---Java解析xml文件

    dom4j解析xml文件、之前用下面的方法,90M的xml,500万行,解析完插入数据库,单线程,不到1小时搞定,而只是解析数据,只用了7秒。 这里解析的xml文件内容和格式如下: <?...下面是解析的工具,传入文件的全路径即可,我这里把内容解析出来,放进了Map,然后加入list中,如果想做处理,比如插入数据库,去遍历list集合即可,工具如下; package com.yscredit.xyjx.utils...org.dom4j.Element; import org.dom4j.io.SAXReader; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.io.File...; import java.util.*; /** * Created by ligthClouds917 * Date 2017/11/7 * Description:工具--解析xml文件...xml文件 * * @param path 文件路径 */ public static List> transfer(String

    7K20

    Java 机制(3)---- 文件结构

    前言 ​ 在上一篇文章中我们一起来看了一下 Java 虚拟机的加载过程,包括虚拟机加载、验证、准备、解析和初始化 5 个大步骤,同时我们还讨论了 Java 虚拟机加载时采用的双亲委派模型思想。...解析 .class 文件 ​ 我们都知道一个 Java (.java文件在被 Java 编译器(javac) 编译过后,如果语法没有错误,则会生成一个对应的 .class 文件,这个 .class...除了 ConstantValue 以外,Java 虚拟机还有很多其他类型的属性表,最常见的便是 Code 表,它的结构我们在分析文件中的方法属性时会介绍,如果虚拟机在进行属性表解析时发现属性表名不是其可以识别...再论加载 ​ 回想一下我们在上篇文章中讨论的 Java 加载机制,需要经过五大步骤:加载、验证、准备、解析、初始化。...而在解析这一步中虚拟机需要将中出现的符号引用替换为直接引用,这个过程可能又会触发其他的加载,比如有两个 A 和 B , B 中有一个 A 的引用,那么在加载 B 的时,在解析过程中发现引用了

    64020

    Java集合:AbstractCollection源码解析

    一、Collection接口   从《Java集合:整体结构》一文中我们知道所有的List和Set都继承自Collection接口,该接口提供了集合最基本的方法,虽然List接口和Set等都有一些自己独有的方法...AbstractCollection,该类也只是一个抽象,提供了对集合操作的一些基本实现。...List和Set的具体实现基本上都直接或间接的继承了该类。为了方便以后更清晰的理解这些的实现,我们先看下AbstractCollection的实现。...二、AbstractCollection源码解析 package java.util; public abstract class AbstractCollection implements Collection...三、总结   本文主要分析了AbstractCollection的源码,很多实现会重写AbstractCollection中已实现的方法。

    39430

    Java文件的结构

    2.接口的访问信息 索引、父索引 和接口索引集合 存储、父、接口的 文件索引 字段表集合 1.字段作用域 2.是否static 3.可变性 4.并发可见性 5.可否被序列化 6.字段数据类型 7...字面量比较接近于Java语言层面的常量概念。...因为Java不支持多重继承,所以父索引只有一个,除了java.lang.Object外,所有Java都有父,因此除了java.lang.Object,所有java的父索引都不为0。...InnerClasses 文件 内部类列表 LineNumberTable Code属性 Java源码的行号和字节码指令的对应关系 LocalVariableTable Code属性 方法局部变量描述...SourceFile 文件 记录源文件名称 SourceDebugExtension 文件 JDK1.6新增,用于存储额外的调试信息。

    67230
    领券