java的跨平台性指的什么

java的跨平台,是指java运行时候凌驾于os之上,是在jvm中运行的,跟os没有直接联系。

如果有机会写数据导入导出,和服务器之间交互的应用,就会知道“跨平台”有什么意义了。

在java之前,跨平台是很痛苦的事情,主要是因为所有对于系统的调用,在不同的操作系统下结果都不一样,简单的来说,int的长度在不同操作系统里面就不一样,甚至于连字节排列的顺序都不同。调用同一个函数返回的格式也不同,因此,写程序的人自己要对不同的系统非常了解,如果真的需要对不同操作系统进行兼容,要在程序里面写很多if,编译的时候要先判断使用的操作系统,创造很多环境变量才能编译,而且编译好的二进制可执行文件只能在本系统上运行。如果你写的是个功能库供别人调用的,那么光对操作系统的判断就占了代码的绝大部分,而且,还要你在不同平台下进行测试,这可是个艰苦卓绝的工作。建议你有空可以看看apache httpd服务器的源代码就知道了。

自从有了java之后,就把操作系统兼容的工作丢给了jvm了,对于程序员来说就再也不要关心int有几位,还有高位在前还是地位在前的问题了,你只要用java的代码把你程序的逻辑实现出来就可以了,这些兼容的问题就交给jvm去处理吧。这样,如果你写一个程序交付给客户使用,如果客户的环境是运行AIX的,你就不需要在本地也装一个AIX来开发和运行,你可以在windows上完成所有的开发,然后把编译好的文件交给客户就可以了,以后有别的客户需要在Solaris上运行这个程序,你都不用修改,直接拿过去就可以运行,这难道不是一种方便吗?只有被跨平台开发折磨过的人才能更深得体会到用java开发跨平台应用的优势。

意思就是java的跨平台交给虚拟机来完成了,而c语言的编译器却搞不定跨平台(系统调用,基于某种编译器的语法,某些特定的库函数,基于某个特定字长的cpu编写程序等)

原文地址:http://bbs.csdn.net/topics/390052011

java的跨平台性指的什么

时间: 2024-08-26 08:57:56

java的跨平台性指的什么的相关文章

写在开始编写Java之前(1)——Java的跨平台性

Java语言之所以比C语言更加实用 是有原因的 Java的一个重要的特点——跨平台性 无论是哪个平台,如Windows.Linus还是Mac系统 Java的语法都是一样的 这个要比C语言用处要广 因为C语言只能在Windows系统下运行 所以人们在选择语言编辑程序或软件时一般会选择Java语言 但是对于不同系统还是有不同的地方 就是要用不同的Java虚拟机 Windows之所以可以运行C语言,是因为Windows里面有C语言的虚拟机 over

Java的跨平台原理

JAVA的跨平台原理 JAVA的跨平台原理 Java是一种简单易用.完全面向对象.有平台无关性.安全可靠的.主要面向Internet的开发工具.Java自从1995年正式面世以来,它的快速发展已经使整个Web世界发生了翻天覆地的变化.随着Java Servlet的推出,Java在电子商务方面开始崭露头角,最新的Java Server Page(JSP)技术的推出,更是让Java成为基于Web应用程序的首选开发工具. Java是第一套允许使用者将应用程序通过Internet从远端服务器传输到本地机

如何理解语言的跨平台性

英语是国际通用语言,但是我说的英语美国人就听不懂 很多人因为用了“跨平台的语言"写没有写的出跨平台的程序而盲目的认为该语言的跨平台性是子虚乌有. 本文以Java为例就来讨论一下”如何理解语言的跨平台性“. 从开发人员或编程语言的角度来理解,”平台“就是指语言的运行时环境,比如Java的平台就是JRE(Java Runtime Environment).是不是觉得很奇怪,难道平台不是指Windows.Linux这样的操作系统吗?没错,Windows和Linux也确实是平 台,但是这个平台对于Jav

Java语言跨平台原理

Java语言有一个很重要的原理叫:跨平台性. 在介绍Java语言的跨平台性之前首先要介绍一个很重要的概念:JVM: JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的. JVM可以安装在不同的平台上,即不同的操作系统上,如:Windows.Linux.Mac.这样同一个Java程序就可以在不同的操作系统上执行,这样就实现了Java语言的跨平台性,也成为Java具有

如何理解JAVA的跨平台特性

1.java的跨平台,是指java在运行时是凌驾于os之上,是在jvm中运行的,跟os没有直接联系. 2.java跨平台主要是由java的编译方式决定的,因为java是通过jvm先编译再执行,它编译的.class文件是底层的实现不是针对操作系统的,所以什么操作系统并不影响java代码的执行. 3.要运行Java程序,必须要安装JDK(Java Development kit),不同的系统需要有不同的JDK.因为JDK内部有JVM(虚拟机),通过虚拟机,可以将我们的原文件转化为机器最终可以识别的机

Question20180105 Java的跨平台特性的原理

Java的 跨平台特性和为什么Java要拥有这个特性 注:相关内容摘自网络,忘记出处,故未注明,若有不妥忘其告知,加以改正: 有过基础Java知识的开发人员都知道Java是跨平台的,可我们知道Java为什么要跨平台吗,Java的跨平台又是如何实现的呢?下面我们来一一了解. 1.什么是平台 Java是可以跨平台的编程语言,那我们首先得知道什么是平台,Java是一个高级开发语言,通过操作系统提供的接口进行开发,所以这里的平台指的就是操作系统了. 操作系统是充当用户和计算机之间交互的界面软件,不同的操

Knowledge Point 20180302 深究Java的跨平台特性

本章主题:从骨子里看Java的跨平台;本文内容部分摘自https://www.cnblogs.com/roger-yu/p/5827452.html 有过基础Java知识的开发人员都知道Java是跨平台的,可我们知道Java为什么要跨平台吗,Java的跨平台又是如何实现的呢?下面我们来一一了解. 1.什么是平台 Java是可以跨平台的编程语言,那我们首先得知道什么是平台,Java是一个高级开发语言,通过操作系统提供的接口进行开发,所以这里的平台主要指的就是操作系统了. 操作系统是充当用户和计算机

Knowledge Point 20180506 深究Java的跨平台特性

本章主题:从骨子里看Java的跨平台;本文内容部分摘自https://www.cnblogs.com/roger-yu/p/5827452.html 有过基础Java知识的开发人员都知道Java是跨平台的,可我们知道Java为什么要跨平台吗,Java的跨平台又是如何实现的呢?下面我们来一一了解. 1.什么是平台 Java是可以跨平台的编程语言,那我们首先得知道什么是平台,Java是一个高级开发语言,通过操作系统提供的接口进行开发,所以这里的平台主要指的就是操作系统了. 操作系统是充当用户和计算机

为什么Java可以跨平台,而其他语言不行

你好 我是大福 你现在看的是大福笔记 今天复习了Java语言的概述 内容包括Java 语言的历史.语言特点及平台版本 JRE和JDK的区别 这篇文章的主题是总结下对Java语言特点中的跨平台原理. 在这之前,我们先了解下计算机语言为什么不能跨平台. 跨平台分两个层面 硬件层面 系统层面 先说硬件层面 计算机只能识别由"0"和"1"组成的二进制数. 那么随便给计算机一组0101的二进制数计算机就能识别么? 当然不是! 以人为例 人是可以识别声音的. 这样一个场景:房间