引言

自己的主业也是java,所以多写java文章还是很有必要的,本篇文章来源于互联网(过于先进,不便展示),读完本篇文章你将了解什么是Java语言以及与其它语言的区别、初步了解java代码的运行过程等相关信息,适合java的初学者以及对java感兴趣的人。

Java语言

java语言是蛮受程序员欢迎的语言,它是一种高级语言,所谓高级语言实际上就是抽象程度比较高,抽象程度越低越接近计算机结构,比如机器语言、但机器语言太难编写,于是有了C语言,但C语言是一种接近计算机结构的语言,比如你需要自行申请和释放内存、这就使你必须要一边关注计算机结构,还要关注要解决的问题,但java不需要。

java语言是一种面向对象的高级语言,你不需要关注计算机结构,所有的内存管理都由JVM统一管理,当内存出现问题时,我们可以分析JVM来及时调整我们的代码。

说白了,java语言是一种面向对象的、提供jVM管理的、编译执行的、跨平台的高级语言。

Java语言的跨平台

java语言具备跨平台能力,与C语言不同。不同的操作系统,不同的平台你都需要把C语言代码拷贝一次,但java语言是一次编译到处运行,因为不同的平台、不同的操作系统,都有与之对应的Java虚拟机,然后Java源代码被编译成字节码,就可以运行在这些虚拟机上。

所以我们说C语言是源码跨平台,而Java语言是字节码跨平台。

java语言的运行过程

首先我们需要用Java语言编写源代码,然后源代码会被编译成字节码,这也就是我们熟悉的字节码文件,字节码文件里面有方法和变量的信息,然后将字节码交给Jvm解释执行,其中的类加载器将字节码文件解析成对象,然后通过对象调用方法,进而启动我们整个的java应用。

可以这么说:我们的jVM就像一个工厂,class文件就是原材料,运行时的数据区就是我们生产的流水线,我们生产的数据就是我们的产品,我们对对象操作就是我们的加工过程,整个加工过程由我们自行设计、组合和更新,这是多么美妙的艺术啊。

如果你喜欢我的文章,欢迎与我交流,联系QQ:2442460982

Java代码是如何运行的?相关推荐

  1. Java程序员必备基础:Java代码是怎么运行的?

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:一个线程池 bug 引发的 GC 思考!个人原创+1博客:点击前往,查看更多 链接:https://segmen ...

  2. 给定下面的java代码_则运行_会产生类型的异常_JavaSE_笔试题_单选选择题

    JavaSE_笔试题_单选选择题1 1. 下面哪一种描述是正确的()? A:abstract修饰符可修饰字段.方法和类. B:抽象方法的body部分必须用一对大括号{}包住. C:声明抽象方法,大括号 ...

  3. java代码是怎么运行的_Java代码是如何运行起来的?

    目录 1.编译 写好:".java"代码后,会通过编译器将代码编译成.class后缀的字节码文件 Java是平台无关的,实现语言无关性的基础就是虚拟机和字节码存储格式 只要编译器按 ...

  4. Java代码是怎么运行的?

    <深入拆解Java虚拟机>学习笔记 专栏地址:http://gk.link/a/1018S 个人博客:http://laijianfeng.org Java 和 C++ 在运行方式上的区别 ...

  5. 01 | Java代码是如何运行

    Java 代码有很多种不同的运行方式.比如说可以在开发工具中运行,可以双击执行 jar 文件运行,也可以在命令行中运行,甚至可以在网页中运行.当然,这些执行方式都离不开 JRE,也就是 Java 运行 ...

  6. java代码是如何运行和部署的?

    我们的class的文件是如何形成的? class文件也称为字节码文件,能够被机器所能识别的二进制流,是javac将.java文件编译之后得到的文件. Class文件又是如何被执行的? class文件是 ...

  7. java代码如何能运行起来_Java代码如何运行

    Java作为高级语言,高度抽象,无法直接运行在机器上,这样就必须设计一个面向Java语言特征的虚拟机,并通过编译器将Java程序转化成虚拟机所能识别的指令序列,也成Java字节码. Java 虚拟机将 ...

  8. java代码没错却运行不了_Java代码没错误,tomcat能正常运行,但是我的项目主页却一直显示不了,显示404错误...

    重新在别人的电抄脑上配置一次环境变量bai 配置环境变量 点击du计算机->高级系zhi统设置->环境变量dao-> 在第一个中新建一个 变量:classpath 值:.;(记住是分 ...

  9. java中有二叉树类吗,二叉树小结(附Java代码可直接运行)

    二叉树常见类型 1.满二叉树 一棵二叉树的结点要么是叶子结点,要么它有两个子结点(如果一个二叉树的层数为K,且结点总数是(2^k) -1,则它就是满二叉树.) 层数与此层节点数的对应关系:第K层,节点 ...

最新文章

  1. IO流(文件的读写)---本文的正确性有待您验证。
  2. 爬取猫眼怦然心动电影评论
  3. vue无缝滚动的插件开发填坑分享
  4. js 浅拷贝直接赋值_js的浅拷贝和深拷贝的简单理解和使用方法
  5. GEE windows 环境配置
  6. jQuery笔记总结
  7. 苹果ipadwps_ipad可以用wps吗?
  8. python dict遍历_Python教程:Python数据类型之字典(附学习教程)
  9. 回溯2--部分全排列
  10. 网吧会员管理系统c语言,常用的网吧会员管理系统哪个比较好|纳客软件
  11. 市场细分与目标群体定位
  12. 怎么判断日出时间早晚_怎样知道当地每天几点日出?
  13. vue基础:ElementUI的表单
  14. 香农采样定理和奈奎斯特采样定理
  15. pyinstaller打包exe文件的详细步骤及过程中遇到的问题
  16. 洛谷-P1314-聪明的质检员
  17. 智芯传感推出性能卓越的多量程硅微加速传感器ZXA
  18. matlab中的折现图
  19. dv-scroll-board 鼠标移入单元格显示单元格所有数据
  20. 短信验证,图形验证码校验

热门文章

  1. JavaScript中的Map、Set及其遍历
  2. 清理Win11磁盘的方法
  3. c语言hypot函数,hypot_数值 | Numerics_C_参考手册_非常教程
  4. 中央大学计算机学什么,中央大学讲解
  5. CNVD-2022-03672/CNVD-2022-10270:向日葵简约版/向日葵个人版for Windows命令执行漏洞复现及修复建议
  6. 我的jQuery之路(笔记)--6
  7. Python调用Rasa API服务进行连续对话
  8. 网络游戏中玩家在线数据的存取
  9. NYOJ - [第九届河南省程序设计大赛]宣传墙(DP)
  10. 从3dMax导出供threeJS使用的带动作模型与加载(认真修改详尽版)