1.java项目是如何部署给用户使用的?
前提:
以一个web项目为例,
使用工具:开发工具:IDEA;Tomcat(应用服务器);Navicat(数据库);Jenkins;JDK;使用maven管理。
2.在自己的电脑上写的java代码是如何运行的?
在本地运行java项目和部署到服务器上的思路是一致的,但部署到服务器上复杂一些,因为在本地运行的java项目已经默认了很多条件,如端口、网关、路由等,在服务器中则需要具体配置。
3、项目中的Class的文件时如何形成的?
前提:Class文件(字节码文件)是.java源代码文件编译后生成的文件,使用JDK提供的javac.exe工具执行后生成的文件。
4、Class文件如何执行的?
当我们运行java.exe命令执行某个.class文件时,.class文件并不是一个可执行文件,所以需要JVM将类文件加载到内存中。
这里涉及到了JVM的类加载机制。这也体现了java的“平台无关性”(我们写出的java文件可以在不同的系统中运行而不用重新修改的原因就是JVM在不同操作系统中的版本不同, 所以我们java语言也具有平台无关性, 相同的java代码在不同的系统中都可以运行.)
下篇博客会详细介绍JVM的类加载机制。