Java到底属于编译型语言还是解释型语言?

要想知道Java属于编译型语言还是解释型语言我们需要知道他们的定义和区别

定义:

编译型语言:把做好的源程序全部编译成二进制代码的可运行程序。然后,可直接运行这个程序。

解释型语言:把做好的源程序翻译一句,然后执行一句,直至结束!

区别:

编译型语言,执行速度快、效率高;依靠编译器、跨平台性差些。

解释型语言,执行速度慢、效率低;依靠解释器、跨平台性好。

大部分开发人员都知道,Java源文件需要先被编译成.class文件才能在JVM中运行。但其实将Java源码

变成字节码的过程不是C或者C++程序员所理解的那种编译,平时我们所说的编译器只是一个针对java源码

生成类文件的工具。Java体系中真正的编译器是JIT,如图所示:

因为JVM为了效率,都有一些JIT优化,将.class的二进制代码编译为本地的代码直接运行,所以是编译的。

而Java源文件编译成.class文件,并不是机器可以识别的语言,而是字节码,最终还是需要 JVM的解释,才

能在各个平台执行(这同时也是java跨平台的原因)。所以它是解释运行的,那也就算是解释的了。

所以可以说java既是编译型的,也是解释型的。

java属于编译_《程序员修炼之道》-读书笔记一-Java到底属于编译型语言还是解释型语言?...相关推荐

  1. [转载+电子书下载]《程序员修炼之道》 笔记与感想

    [转载]<程序员修炼之道 >笔记与感想 1 我的源码让猫给吃了 不要寻找借口,从自身找原因 2 软件的熵  一句话:不以善小而不为,勿以恶小而为之. 从初期就要做好规范,不要因为是poc这 ...

  2. 程序员修炼之道---读书随笔1

    终于开始读<程序员修炼之道>这本书了,初看这本书的名字,有点以前的道士修炼法术的意思,觉得很是好奇,作为一名程序员,该如何修炼我们自己呢? 这本书涵盖的主题从个人责任.职业发展,直到用于使 ...

  3. 《程序员修炼之道》笔记(一)

    这几天开始看<程序员修炼之道>,也许不少人看了书的标题,第一时间会觉得这是鸡汤一类的书.但至少以我自己的感受来看,这是很棒的书,现代人文主义不是提倡自我意识嘛,自己感觉好的就是好的.况且人 ...

  4. 程序员修炼之道阅读笔记02

    本周阅读了程序员修炼之道(从小工到专家)的第四章<注重实效的偏执>.第五章<弯曲,或折断>.第六章<当你编码时>的相关内容,对其中一些值得我们学习的地方进行了摘录. ...

  5. java怎么表示log2_Java程序员修炼之道 之 Logging(2/3) - 怎么写Log

    1. 一个最基本的例子 使用Logging框架写Log基本上就三个步骤 引入loggerg类和logger工厂类声明logger记录日志 下面看一个例子 //1. 引入slf4j接口的Logger和L ...

  6. 程序员修炼之道阅读笔记01

    读过这本书之后,我觉得这本书主要是在讲一个优秀的程序员应该具有的特点,素质和应该怎么去做.真正是一个程序员从小工到专家的修炼之路. 对于第一章"注重实效的哲学"有如下总结和理解 1 ...

  7. 《程序员修炼之道》笔记(四)

    第五章 弯曲,或折断 为了赶上今天近乎疯狂的变化步伐,我们需要尽一切努力编写尽可能宽松灵活的代码.否则,我们可能就会发现我们的代码很快就会变得过时,或是太脆弱,以至于难以清理. 1. 解耦与得墨忒耳法 ...

  8. 《程序员修炼之道》笔记(九)

    *续 第八章 注重实效的项目 1. 无处不在的自动化 文明通过增加我们不假思索就能完成的重要操作的数目而取得进步. 无论是构建和发布流程.是书面的代码复查工作.还是其他任何在项目中反复出现的任务,都必 ...

  9. 《程序员修炼之道》笔记(八)

    第八章 注重实效的项目 随着你的项目开动,我们需要从个体的哲学和编码问题转向讨论更大的.项目级的问题.我们将不深入项目管理的具体细节,而是要讨论能使项目成功或失败的几个关键区域. 1. 注重实效的团队 ...

  10. 《程序员修炼之道》笔记(二)

    第二章 注重实效的途径 1. 重复的危害 a) DRY-Don't Repeat Yourself.系统中的每一项知识都必须具有单一.无歧义.权威的表示. b) 重复是怎样发生的 Imposed Du ...

最新文章

  1. mysql主主复制、主从复制、半同步的实现
  2. ICA(独立成分分析)笔记
  3. Field+offset(len)
  4. 判断是否为长按_【物流知识】物流配送合理化判断7大标志
  5. windows10 ubuntu16.04 双硬盘安装双系统安装
  6. Python 操作 mongodb 数据库
  7. micropython 人脸识别检测_基于ESP8266的人脸识别球锁开锁方案
  8. 如何正确选用无线模块天线
  9. 三维叉乘怎么算_奇技淫巧系列:向量叉乘
  10. Excel字符串拼接
  11. Excel批量根据银行卡号查询银行卡的详细信息
  12. 正版星界边境服务器,《星界边境(Starbound)》正式版联机教程
  13. 关于小米手机USB传输稍大点的文件老中断的问题解决方法!
  14. 奇迹服务器技能修改,奇迹技能修改教程-地狱火技能修改介绍
  15. 基于Linux的嵌入式网络视频监控系统研究与设计
  16. oracle数据库中_以下undo和redo说法错误的是,[案例]Oracle报错ORA-01157 ORA-01110 12C数据库undo异常恢复...
  17. 【人脸表情识别】稀疏表示人脸表情识别【含GUI Matlab源码 786期】
  18. 问渠那得清如许?为有源头活水来。——java面向对象的思想
  19. 适合新手的音乐制作软件有哪些,适合新手的音乐制作教程有哪些
  20. 科研学术的写作环境搭配(LaTeX+VSCode+Sumatra PDF/Skim)Win/Mac通用

热门文章

  1. 被骂垃圾货,却卖出8000万副,干翻国外大牌!这个产品杀手凭什么?
  2. 首次亮相!法拉第未来公布FF 91内饰图:贾跃亭心血没白费
  3. iOS 13.2“杀后台”严重 被用户狂喷:专业“杀微信”
  4. 紫光展锐回应“春藤510只支持NSA”:错误解读 SA和NSA一个都不少
  5. 中国移动将发布首款自主品牌5G手机:先行者X1
  6. 人间值得!支付宝宣布平台上登记器官捐献人数:90后占比超一半
  7. 放弃治疗式宣传?Kindle官方自我调侃:盖Kindle 面更香
  8. 开挂了!女生用写字机器人刷作业 因写太快被识破 这能怪孩子吗?
  9. 2019年新iPhone消息再曝 将会有重大升级!
  10. 去年购房者平均年龄为29.5岁 80后家庭人均居住面积最小