JAVA 跨平台原理

    反复的听说JAVA是一种跨平台的语言,到底何为跨平台,JAVA又是如何实现跨平台的呢?

 

   先来看一则小故事

   最近YY上开设了JAVA俄语班、JAVA英语班、JAVA日语班等等,关于JAVA的系列课程教室。小花是JAVA行业的大牛,于是YY的管理员邀请小花在工作之余,为一些初来乍到的学者们讲课。很多同学听说小花讲课不错,都想听听小花的课,可是问题来了:各位学者来自不同国家,他们大多只懂自己的国语(爱国呀!),而小花只懂汉语,对于英语略懂点(超级爱国者),这怎么办呢?有两种办法,第一,他每次上课前,先准备好演讲稿,各种语言都用自己懂的汉语来标注;第二,每次上课,带个翻译(这个翻译比较列害,八种语言不在话下)。

   话说,这两种方式有什么不同呢?演讲稿不能灵活的变通,比如本来讲课定为周六上午,演讲稿上的开场白是Good morning,ereryone!结果小花临时有事调到了下午 ,小花还照此不误的念了开场白,结果惹来众笑,大牛也不过如此嘛,小花在学生面前丢了面子;而带个翻译呢,不管在什么时候讲课,讲的什么内容,他都能给你翻译成相应的语言。

   

   上面的故事与咱们的JAVA跨平台又有什么联系呢?下面看一幅图:

 

 

 

 

   你仔细想想,看看JAVA跨平台到底与上面的故事有何联系,你是不是会想到:不同的国家就好比是平台,而翻译者就好比是虚拟机!

 

   到底什么是跨平台,JAVA又是怎么实现跨平台的?

   JAVA字节码通过虚拟机翻译(解释)给不同的平台,这个过程就叫做跨平台JAVA字节码文件只有一个,但针对不同的平台会有不同的虚拟机,比如有Mac平台的虚拟机、Linux平台的虚拟机、Windows平台的虚拟机等等……究其原因,实现跨平台最根本的东西是虚拟机(JVM)。

 

  • 9
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 21
    评论
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值