java编译过程_Java编译运行过程

java编译过程_Java编译运行过程Java编译运行过程在上一篇文章中,我们了解了第一个Java入门程序,以及如何编译和运行第一个Java程序。本文主要了解以下编译和运行Java程序时会发生什么。此外,我们还会分析一些常见的问题。1Java程序编译过程在编译时,Java文件由Java编译器(它不与底层操作系统交互)将Java代码转换为字节码(.class)。2Java程序运行过程在Java程序运行中,会执行以下步骤:类加载器(C…

大家好,又见面了,我是你们的朋友全栈君。

Java编译运行过程

在上一篇文章中,我们了解了第一个Java入门程序,以及如何编译和运行第一个Java程序。本文主要了解以下编译和运行Java程序时会发生什么。此外,我们还会分析一些常见的问题。

1 Java程序编译过程

在编译时,Java文件由Java编译器(它不与底层操作系统交互)将Java代码转换为字节码(.class)。

03acc63256f607c5103fd056a92ab1e4.png

2 Java程序运行过程

在Java程序运行中,会执行以下步骤:

1fd912a61074d8e96b75f12ebcf5602d.png

类加载器(Classloader):类加载器是JVM的子系统,用于加载类文件。

字节码验证程序(Bytecode Verified):检查代码片段中是否存在可能违反对对象访问权限的非法代码。

解释器(Interpreter):读取字节码流,然后执行指令。

3 两个常见的问题

3.1 Java源文件命名方式

问题:一个class的名称为Simple,Java源文件名称可以不是Simple.java么?

答案是可以的,但是前提是该类不是public修饰符。

482124c0e7691066b85c2251fb51c0d5.png

3.2 一个Java源文件写多个类

问题:一个Java源文件中可以写多个类么?

答案是可以的。如下图所示:

a5f0765b294abf4d7f6574401623f945.png

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/132287.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(1)


相关推荐

  • docker部署web项目_docker web程序本地化

    docker部署web项目_docker web程序本地化前言前面我们运行的容器并没有一些什么特别的用处。接下来让我们尝试使用docker构建一个web应用程序。我们将在docker容器中运行一个PythonFlask应用来运行一个web

  • Linux内核驱动编写

    Linux内核驱动编写#前言开发过单片机的小伙伴可以看下我之前的一篇文章从单片机开发到linux内核驱动,以浅显易懂的方式带你敲开Linux驱动开发的大门。#正文用户空间的每个函数(用于使用设备或者文件的),在内核空间中都有一个对应的功能相似并且可将内核的信息向用户空间传递的函数。下表为几种设备驱动事件和它们在内核和用户空间对应的接口函数。事件(Events)用户函数(Userfunction…

  • git项目怎么用_git详细教程

    git项目怎么用_git详细教程项目开发git的基本使用流程项目开发git仓库使用流程一、新建项目以及首次推送1、git上新建项目2、在项目下创建属于该项目的代码仓库(选择私有仓库)3、完成创建后在自己本地的项目文件夹下使用“gitinit”初始化该文件夹4、“gitadd.”将工程内的所有文件放入暂存区5、”gitcommit-m“xxxxxxx””这次提交的信息,”xxxxxx”提交备注尽可能的写的详细,方面后续查找问题6、“gitremoteaddoriginxxxxxxxxxxxxx

  • getParameter和getParameterValues

    getParameter和getParameterValuesgetParameter根据参数名获取参数值但只能获取一个值,例如如果选中多个多选框,获取的值只有第一个。getParameterValues能获取多个值,返回的是一个字符串数组

  • AssetBundle加载

    AssetBundle加载https://blog.csdn.net/lodypig/article/details/51872595

  • cBridge 2.0 – 200万美元漏洞赏金计划

    cBridge 2.0 – 200万美元漏洞赏金计划我们发布了cBridge2.0-200万美元漏洞赏金计划,快来看看吧!

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号