1.先回顾一下初出茅庐的时候

在我刚刚开始接触到Java的时候,印象比较深刻的就是面向对象,跨平台性,至于跨平台性,当然,也稍微了解到了Java背后那个大神!

JVM!Java虚拟机

但是连基本语法都搞不懂的我,那个时候就更不用提虚拟机了。

你们还记得大学必修课C语言了,当初真是这个课次次重修差点把我劝退!我也不记得自己是凭着什么样的心情居然跑去学了java,当然第一堂课就配置环境变量,也是两股战战,极度崩溃,反复报错反复问度娘,可能就真的是许三多的优良美德到我这里传承的不错,愣是坚持下来了。

题外话不多说了,还是回到正题,聊聊Java。

2.Java为什么具有跨平台性?

就是因为java背后的男人jvm义无反顾始终如一的支持!

不好意思,要说jvm,我就还得扯回我刚开始学Java的故事。

在我还是个菜鸟的时候,我就在想跨平台性到底指的是什么,相对于其他语言,这个特点有什么特别的优势嘛?

实际上也很简单,分词理解,跨平台==即不依赖操作系统,也不依赖硬件环境,指的是操作系统,也就是说,这种语言跨越了操作系统和硬件的限制。

官方的回答我看的也是一知半解,没办法技术太菜了!我疑惑的地方就在于明明其他语言在不同的操作系统上也能运行,这难道不是跨平台性吗?跨平台跨的是哪个平台?

简单理解下:

讲一个C++吧,C++只能在windows上运行,其他操作系统不能运行2.讲一个C语言吧,C写的程序可以在其他操作系统上运行,但是对于不同的系统,由于不同操作系统外部提供的api不同,而且还要修改代码,所以在编译时需要编译成指定的汇编语言!

但Java就比较嚣张了,在他身后有一个默默支持它的人,Java想做什么就做什么,不用在乎你是什么操作系统,我只关心我的代码,具体调用交给它的好兄弟Jvm去做,Java更潇洒,万花筒,不沾片。

说到底,讲了那么多话,总结提炼成一句比较简短的话。

在编译时,Java语言没有必要关注不同操作系统的底层api的调用,也没有必要关注cpu类型,C语言在编译时,需要关注不同操作系统的底层api的调用,也没有必要关注cpu类型。

3.总结:

一个Java编译一个地方运行,一个c语言编写一个地方运行。

对于这个跨平台来说,仁者见仁智者见智,但是,精髓就是自我理解。

跨平台语言意味着编译结果与操作系统和cpu类型无关,在编码时不需要考虑这些外部因素。

java的跨平台性与c语言,Java为什么具有跨平台性?相关推荐

  1. Java是世界上最好的语言

    不好意思,Java是世界上最好的语言 Java的特点 ***Java**是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强 ...

  2. java哪个软件编程好学吗_java好学吗?java是不是最难学的语言?

    1. java好学吗? 从某些方面来说,java比较容易学,如果是大学毕业,大学计算机专业里大多开设了java基础课程,或者学过一点编程,学起java来也会轻松不少.即使是零基础也不用担心,java可 ...

  3. java后台好学吗_java好学吗?java是不是最难学的语言?

    java好学吗?java是不是最难学的语言?对于一些刚接触java的朋友来说,可能会有这样的疑问,下面就来一起了解下吧. 1. java好学吗? 从某些方面来说,java比较容易学,如果是大学毕业,大 ...

  4. java难学吗 知乎_java好学吗?java是不是最难学的语言?

    java好学吗?java是不是最难学的语言?对于一些刚接触java的朋友来说,可能会有这样的疑问,下面就来一起了解下吧. 1. java好学吗? 从某些方面来说,java比较容易学,如果是大学毕业,大 ...

  5. Java语言的跨平台性或Java语言为什么说可以跨平台运行

    什么叫跨平台性? 一个编译好的.class文件可以在多个系统下运行,这种特性称为跨平台.  Java的运行机制 实现Java程序跨平台运行的核心是JVM虚拟机,不同的环境下安装不同版本的JVM,那么同 ...

  6. java语言与www技术形成性考核册_电大Java语言与WWW技术形成性考核程序题

    电大JAVA语言与WWW技术形成性考核程序题一.写出下列程序完成的功能1.PUBLICCLASSSUM{PUBLICSTATICVOIDMAINSTRINGARGS{INTSUM0FORINTI1IM ...

  7. java语言与www技术形成性考核册_电大Java语言与WWW技术形成性考核填空题

    2017电大最新题库 电大Java语言与WWW技术形成性考核填空题 1.Java具有的特点简单.面向对象.与平台无关.解释型.多线程.安全.动态的语言. 2.开发与运行Java程序需要经过的三个主要步 ...

  8. java 获取打印机缺纸_JAVASE 语言概述和JAVA

    第一章:开发前言 计算机分为硬件和软件,一般来说.硬件就是组成计算机的可见的物理组件.我们的电脑.手机.电子设备都算一个小的计算机.而软件提供看不见的指令,这些指令控制硬件并且通过硬件完成特定任务. ...

  9. Java是世界上最好的语言!

    △Hollis, 一个对Coding有着独特追求的人△ 这是Hollis的第 247篇原创分享 作者 l Andin Bicknell 译者 | Hollis 来源 l Hollis(ID:holli ...

最新文章

  1. assert python 中断_Python这十大装B语法!你不会还没有听过吧?
  2. CCNA考试的一点体会
  3. Nginx服务器启停方式介绍
  4. nfcwriter下载 ios_iphone12支持在5G蜂窝数据下下载IOS更新
  5. CF思维联系–CodeForces - 223 C Partial Sums(组合数学的先线性递推)
  6. DB2 数据库清表语句
  7. NOIP2012模拟试题【奶牛晒衣服】
  8. 如何在Microsoft Excel中将文本转换为日期值
  9. 给定年月日计算是一年的第几天
  10. 11-用两个栈实现一个队列
  11. LeetCode(883)——三维形体投影面积(JavaScript)
  12. atitit 技术选型之道. attilax著 艾龙著 1. 标准 2 1.1. 符合趋势度 2 1.2. 简单易用 2 1.3. 文档丰富度 2 1.4. 下载便利性 2 1.5. 性能 2 1.
  13. 应用程序正常初始化(0xc0150002)失败
  14. AminoCapital:大数据+机械学习引领今年硅谷趋势
  15. Mysql数据库基本知识四:视图
  16. 显示器怎么看服务器内容,电脑显示器知识扫盲 教你怎么看显示器参数
  17. 高权重网站外链如何建设和打造?
  18. jc-datetime :JavaScript 日期时间实用编程
  19. Redis --- 超级详细
  20. 顾大松:对北京市出租车、网约车、顺风车文件征求意见稿的六项建议

热门文章

  1. 大家警惕IBMX60、X61翻新机
  2. 用ps制作一个半透明的图片
  3. 如何在Windows 10上更改任务栏的高度或宽度
  4. html打开界面的时候新建浏览器选项卡,IE11新选项卡怎么设置 IE11一个窗口打开多个页面设置方法...
  5. 编写一个三子棋游戏,和弱智电脑下棋
  6. 查看虚拟机CENTOS7 的 IP 地址和命令
  7. c语言如何给电脑取名字,给我的C程序起个名字!!
  8. day6 (常用模块和面向对象基础)
  9. 基于物理的渲染学习心得——面向使用的PBR理论
  10. 爱上开源boot4go,我的第一个golang的开源项目