传统的编程中,源代码编译为可执行的代码后,只能针对特定的平台(操作系统),换句话说,针对Windows编写和编译的代码,只能在Windows上运行。。。

java程序则编译为字节码。字节码本身不能运行,因为它不是原生代码。字节码只能够在Java虚拟机(JVM)上运行。JVM是一个原生应用程序,它负责解释字节码。通过使用JVM可用在众多的平台上运行程序。

简单来说:java源文件(.java)通过编译器生成字节码文件(.class),字节码文件(.class)通过JVM(Java虚拟机)中的解释器再翻译成特定机器上的机器码,然后在特定的机器上运行。编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来将虚拟机代码转换为特定系统的机器码执行。

最新文章

  1. 【整理】--【KERNEL】内核定时器
  2. 获取手机的gps定位
  3. kettle使用log4j管理输出日志
  4. css -- 题目汇总
  5. 学一点Git--20分钟git快速上手 [Neil]
  6. 我的EntityFramework(2):简单的数据查询
  7. Mysql Partition 理论知识总结
  8. 路由器wan口连接不上的问题
  9. Bounding-box 回归
  10. centos中安装配置nginx完成之后主机无法访问
  11. 基于binlog恢复工具mysqlbinlog_flashback
  12. 20175224 2018-2019-2 《Java程序设计》第七周学习总结
  13. 第四节:详细讲解Java中的类和面向对象思想
  14. Spark大数据平台安装教程
  15. uWSGI+Nginx安装、配置
  16. C++开源项目等收集
  17. 如何在web api中使用SignalR
  18. getopenfilename多选文件/文件夹问题和getsavefilename另存为路径
  19. Process子类
  20. spring cloud 入门系列:总结

热门文章

  1. 【Java面试题】16 静态代码块,main方法,构造代码块,构造方法
  2. SQL Server 2008 收缩日志(log)文件
  3. Nginx伪静态配置和常用Rewrite伪静态规则集锦
  4. mysql中参数--init-file的作用是什么呢?
  5. CocoaPods的 安装 /卸载/升级
  6. 浅谈MVC和MVVM模式
  7. XML的一些点
  8. Excel 2010 统计行数
  9. webpack中,css中打包背景图,路径报错
  10. PHP关于验证