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

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

在这篇文章中我们来一起看一下 class 文件的结构,来进一步加深我们对虚拟机的加载机制和机制的理解。本文参考了 《深入理解 Java 虚拟机》一书。...解析 .class 文件 ​ 我们都知道一个 Java (.java文件在被 Java 编译器(javac) 编译过后,如果语法没有错误,则会生成一个对应的 .class 文件,这个 .class...在 .class 文件中值为 CAFEBABY(咖啡宝贝?),这个值非常有意思,因为其意义正好对应 Java 的图标: ? 来杯 82 年的 Java 压压惊?...,这也就是编译出这个 .class 文件Java 文件文件名。 ​...好了,在这篇文章中我们通过一个例子来看了一下文件格式,相信你对 Java 机制有了一个更深的理解。如果博客中有什么不正确的地方,还请多多指点。如果觉得这篇文章对您有帮助,请不要吝啬您的赞。

62920

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新增,用于存储额外的调试信息。

65730

Java 基础篇】Java文件详解

导言 Java提供了丰富的文件操作功能,其中java.io.File是用于处理文件和目录的主要之一。通过File,我们可以创建、删除、重命名和检查文件或目录的存在等操作。...本文将详细介绍Java中的File及其常见用法,并提供一些示例代码。 一、文件概述 FileJava中处理文件和目录的基础之一。...delete(): 删除文件或目录。 二、创建文件Java中,我们可以使用File来创建新的文件。...需要注意的是,FileJava 7及更高版本中已过时,推荐使用java.nio.file包中的Path和Files进行文件操作。但是,File仍然可以在旧代码中使用。...希望本文对你理解和使用Java文件有所帮助!

15220

java中的IO流之文件复制

字符流的父Reader(读取到内存)和Writer(从内存输出),字节流的父InputStream(读取到内存)和OutputStream(从内存输出),然后为了方便各种操作,比如为了文件操作,派生了文件流...3.文件复制 文件复制的原理很简单,从硬盘读取文件流到程序,再从程序中输出流到目标文件,就完成了文件复制。事实上用到了java中的文件输入输出流。...input; 7 private OutputStream output; 8 private static int length; 9 /** 10 * 文件复制 11...public static void main(String[] args) { 56 Manage man = new Manage(); 57 // 第一个参数是将要复制文件...,第二个参数是输出的目标文件(如果没有,则新建一个,实现文件复制) 58 man.fileCopy("F:\\CodeWorkSpace\\java\\FileCopy\\src\\test0713

90320

java文件处理(3)——实现文件复制文件移动「建议收藏」

任务要求: 通过二进制流的操作方式把程序调整为可以实现对任何类型文件进行文件复制(而不是调用windows命令行的内部命令copy)。...一.文件复制 1.介绍InputStream和OutputStream InputStream和OutputStream是抽象,是所有字节输入流和输出流的父。...public FileOutputStream(String name,boolean append); 2.进行文件复制 代码如下: import java.io.File; import java.io.FileInputStream..., desPathStr);//将E:\\java task\\zhl.txt文件拷贝到E:\\java task\\zhlll } } 结果如下: 二.文件移动 1.renameTo...\\zhl.txt移动至E:\\java task\\zhlll 2.实现文件移动 代码如下: import java.io.File; class MoveFile { public static

86320

java class文件「建议收藏」

根据 Java 虚拟机规范,文件由单个 ClassFile 结构组成: ClassFile { u4 magic; //Class 文件的标志...Class文件字节码结构组织示意图 (之前在网上保存的,非常不错,原出处不明): 文件字节码结构组织示意图 2.1 魔数 u4 magic; //Class 文件的标志 每个 Class 文件的头四个字节称为魔数...高版本的 Java 虚拟机可以执行低版本编译器生成的 Class 文件,但是低版本的 Java 虚拟机不能执行高版本编译器生成的 Class 文件。...interfaces[interfaces_count];//一个雷可以实现多个接口 索引用于确定这个的全限定名,父索引用于确定这个的父的全限定名,由于 Java 语言的单继承,所以父索引只有一个...,除了 java.lang.Object 之外,所有的 java 都有父,因此除了 java.lang.Object 外,所有 Java 的父索引都不为 0。

42330

Java文件操作效率对比

前言 众所周知,Java中有多种针对文件的操作,以面向字节流和字符流可分为两大类,这里以写入为例: 面向字节流的:FileOutputStream 和 BufferedOutputStream 面向字符流的...,比较这些写入文件的性能。...Total Number of Cores: 4   L2 Cache (per Core): 256 KB   L3 Cache: 6 MB   Memory: 16 GB 测试程序 纵向比较:几种文件操作文件中写入相同行数的内容...(每行内容均为“写入文件Data\n”),比较其耗费时间 横向比较:对于同一个文件操作,比较写入不同行数内容情况下所耗费时间;本文以2的次方指数级增长行数 1 import java.io.File...且慢,让我们把写入文件的数据改一下: 1 import java.io.File; 2 import java.io.FileOutputStream; 3 import java.io.*

1.1K40

Java实现文件复制的四种方式

背景:有很多的Java初学者对于文件复制的操作总是搞不懂,下面我将用4中方式实现指定文件复制。...(注意这种方式只能复制只包含字符的文件,也就意味着你用记事本打开该文件你能够读懂) 1 private static void readerWriterCopyFile(File srcFile, File...desFile) throws IOException { 2 // 使用字符流进行文件复制,注意:字符流只能复制只含有汉字的文件 3 FileReader fr...(注意这种方式只能复制只包含字符的文件,也就意味着你用记事本打开该文件你能够读懂) 1 private static void bufferedReaderWriterCopyFile(File srcFile...中分别使用字节流、高效字节流、字符流、高效字符流四种方式实现文件复制的方法!

69830
领券