Java中的源文件、字节码文件解读

 更新时间:2024年03月25日 16:18:45   作者:Javaer.  
这篇文章主要介绍了Java中的源文件、字节码文件,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

引言

很多朋友在编写Java程序时,通常使用的新手软件为Eclipse,但他会生成两个文件,那么这两个文件是什么呢?

以HelloWorld为例 👇

源文件和字节码文件

	public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello,World!");
    }
}

在我们进行编译运行时,常常使用cmd命令来执行

  • 首先是javac HelloWorld.java
  • 然后是java HelloWorld

后缀名为.java的文件为源文件,后缀名为.class的文件为字节码文件

由此我们可以得出结论 先产生.java的源文件才能产生.class的字节码文件

注意:

众所周知.Java文件中可以定义多个类,但我们要注意以下几点:

  • public权限类只能有一个(也可以一个都没有,但是只能有一个)
  • 这个.java文件名只能是public权限的类的类名
  • 如果这个文件中没有public类,他的.java文件的名字是随便的一个类名
  • 当使用javac命令生成编译这个.Java文件的时候,则会针对每一个类生成一个.class文件

JDK、JRE

JDK、JRE和JVM的包含关系

1.JDK = JRE + 开发工具集(例如Javac,Java编译工具等)

2.JRE = JVM + Java SE标准类库(Java核心类库)

3.JDK = JVM + Java SE标准类库 + 开发工具集(若仅运行开发好的.class文件 只需要JRE)

例题

学会了上面的内容,那么下面这道题你答对了吗?✔️

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java IO流将一个文件拆分为多个子文件代码示例

    java IO流将一个文件拆分为多个子文件代码示例

    这篇文章主要介绍了java IO流将一个文件拆分为多个子文件代码示例,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • Java日期时间处理问题(从Date、Calendar到SimpleDateFormat)

    Java日期时间处理问题(从Date、Calendar到SimpleDateFormat)

    这篇文章主要介绍了Java日期时间处理深度解析(从Date、Calendar到SimpleDateFormat),我们详细讨论了Java中的日期和时间处理,包括Date、Calendar和SimpleDateFormat类的使用,以及Java 8引入的新的日期时间API的优势,需要的朋友可以参考下
    2024-08-08
  • Map与JavaBean相互转换的工具类 

    Map与JavaBean相互转换的工具类 

    这篇文章主要介绍了Map与JavaBean相互转换的工具类,在做导入的时候,遇到了需要将map对象转化 成javabean的问题,也就是说,不清楚javabean的内部字段排列,只知道map的 key代表javabean的字段名,value代表值,需要的朋友可以参考下
    2022-02-02
  • java连接orcale数据库示例分享

    java连接orcale数据库示例分享

    这篇文章主要介绍了java连接orcale数据库示例,需要的朋友可以参考下
    2014-02-02
  • Idea启动多个SpringBoot项目的3种最新方案

    Idea启动多个SpringBoot项目的3种最新方案

    SpringBoot自带Tomcat,直接运行main方法里面的SpringApplication.run即可,并且访问时不需要带项目名,这篇文章主要介绍了Idea启动多个SpringBoot项目的3种方案,需要的朋友可以参考下
    2023-02-02
  • Java多线程编程之Lock用法实例

    Java多线程编程之Lock用法实例

    这篇文章主要介绍了Java多线程编程之Lock用法实例,本文直接给出代码实例,需要的朋友可以参考下
    2015-05-05
  • Spring注解之@Import的简单介绍

    Spring注解之@Import的简单介绍

    @Import是Spring基于Java注解配置的主要组成部分,下面这篇文章主要给大家介绍了关于Spring注解之@Import的简单介绍,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • Springboot单元测试编写实践

    Springboot单元测试编写实践

    在日常的开发过程中,为了提高代码的可靠性和健壮性,同时也是检测代码的质量,减少测试环节的问题,会对完成的业务功能代码编写单元测试,在本文中,将分享一些单元测试的实践和心得,需要的朋友可以参考下
    2023-11-11
  • idea如何自定义代码模板

    idea如何自定义代码模板

    这篇文章主要介绍了idea如何自定义代码模板问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • java线程池对象ThreadPoolExecutor的深入讲解

    java线程池对象ThreadPoolExecutor的深入讲解

    在我们的开发中“池”的概念并不罕见,有数据库连接池、线程池、对象池、常量池等等。下面这篇文章主要给大家介绍了关于java线程池对象ThreadPoolExecutor的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧
    2018-09-09

最新评论